Jac*_*van 5 xcode nstimer ios swift swift3
我一直在尝试用计时器重新填充游戏生活,但是每当我离开视图并返回时,计时器就会重复并变得更快。我试图用Timer?.isValid函数来解决这个问题,只在定时器无效时运行它,所以它永远不会重复,但它似乎无法检查if 语句中的定时器是否无效。
这是我到目前为止一直使用的 if 语句:
if (myTimer?.isValid){
} else{
//start timer
}
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激,谢谢。
我建议使用自检startTimer()和stopTimer()函数,计时器只有在当前未运行时才会启动,停止函数将timer变量可靠地设置为nil.
var timer : Timer?
func startTimer()
{
if timer == nil {
timer = Timer.scheduledTimer...
}
}
func stopTimer()
{
if timer != nil {
timer!.invalidate()
timer = nil
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9451 次 |
| 最近记录: |