在此處輸入圖片說明
我怎樣才能停止一個回圈?
代碼 1
@objc func dismissImageView() {
timer1 = Timer()
timer1 = Timer.scheduledTimer(timeInterval: 0.01, target: self, selector: #selector(timerWillDisappear), userInfo: nil, repeats: true)
}
代碼 2
**When i touch on myView - timer's beginning and don't stop!**
@objc func timerWillDisappear() {
if repeatsVar != 1.0 {
repeatsVar! = 0.01
}
}
代碼 3
else if repeatsVar == 1.0 { **This if doesn't work!!!**
timer1.invalidate()
timer1 = nil
repeatsVar! -= 1
self.view.removeFromSuperview()
}
uj5u.com熱心網友回復:
浮點數對它們有一些錯誤。您可能不會得到恰好為 1.0 的值。既然你的值一到 1.0 就停止,為什么不檢查它是否小于 1.0 呢?
@objc func timerWillDisappear() {
if repeatsVar < 1.0 {
repeatsVar = 0.01
} else
timer1.invalidate()
timer1 = nil
repeatsVar = 0
self.view.removeFromSuperview()
}
}
另請注意,您的dismissImageView()方法不應先創建一個空計時器,然后再創建一個計劃計時器:
@objc func dismissImageView() {
//timer1 = Timer() <- Get rid of this line.
timer1 = Timer.scheduledTimer(timeInterval: 0.01, target: self, selector: #selector(timerWillDisappear), userInfo: nil, repeats: true)
}
uj5u.com熱心網友回復:
在此處輸入圖片說明
//答案:更改運算子 != on <
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/384046.html
