[XCode 8,Swift 3] 我通过将observedProgress属性设置为Progress对象的实例来使用UIProgressView,即:
progressView.observedProgress = myProgress
myProgress.totalUnitCount最初为0,UIProgressView正确显示0%。 UIProgressView还可以在更改时精美地跟踪myProgress值。但是,在完成相关任务后,我想将UIProgressView重置为0%。我希望这能做到这一点:
myProgress.totalUnitCount = 0
myProgress.completedUnitCount = 0
但这不起作用,进度条继续显示100%。即使myProgress.fractionCompleted返回0.0!我可以通过执行以下操作强制进度条返回0%:
progressView.progress = 0.0
但是,这需要直接访问视图,并且在一定程度上违背了观察Progress对象的美感。
我无法在Progress对象上找到任何重置概念。我错过了什么?
答案 0 :(得分:0)
从@Sweeper这似乎有用:
myProgress.totalUnitCount = 10
myProgress.completedUnitCount = 0
myProgress.totalUnitCount = 0
我不喜欢Sweeper的解决方案,因为它使Progress对象处于不准确的状态。但是,设置totalUnitCount两次似乎工作,进度条必须得到两个更新,因为它显示0%,然后准确进一步更新。我认为0/0应该显示0%,即这是UIProgressView中的一个错误。无论如何,谢谢扫地车!