【发布时间】:2017-06-06 18:52:18
【问题描述】:
当为 ProgressView 使用动画时,如果我让动画用完,它完全可以正常工作,但如果我在动画仍在运行时再次尝试运行此代码,它会将 100% 添加到当前栏并使其运行通过酒吧。图片应该更合乎逻辑地解释这种情况。
进度从 1.0 (100%) 开始:
进度已过半:
代码再次运行,导致进度超过 100%,尽管它使用了正确的时间来完成。
这是使用的代码:
self.progressView.setProgress(1.0, animated: false)
DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
UIView.animate(withDuration: 10, delay: 0, options: [.beginFromCurrentState, .allowUserInteraction], animations: { [unowned self] in
self.progressView.setProgress(0, animated: true)
})
}
提前致谢!
【问题讨论】:
-
您正在运行的其余代码(在设置下一个问题时)是否有可能无意中更改了进度视图的框架或约束?
标签: ios swift uiview animatewithduration