当我的进度视图达到最大值时,我正在尝试向控制台打印一些内容。我在进度视图上有一个长按手势识别器,其中用户将视图按住5秒钟,这会增加进度视图的值。当进度视图值达到最大值时,我想在控制台上打印一些东西。
我尝试了类似的方法
if progressView.value == 5 {
print("message")
}
这会在用户按下视图后立即打印消息,它不会等到值= 5。
我正在使用MBCircularProgressBarView
谢谢
@IBAction func buttonPressed(_ sender: UILongPressGestureRecognizer) {
if sender.state == .began {
UIView.animate(withDuration: 5) {
self.progressView.value = 5
}
}
if sender.state == .ended {
UIView.animate(withDuration: 2) {
self.progressView.value = 0
}
}
}
答案 0 :(得分:-1)
我想我在第一个if语句中看到您的错误,您在触摸开始后立即将progressView.value设置为5,这就是为什么您立即在控制台中看到日志的原因,我建议如下所示< / p>
if sender.state == .began {
UIView.animate(withDuration: 5) {
self.progressView.value += 1
if progressView.value == 5 {
print("message")
}
}
}