swift xcode - 在Timer运行时禁止按下UI按钮

时间:2017-05-07 03:08:26

标签: swift xcode timer

我有一个名为start的按钮,它启动 TIMER 计数,我希望{TIMER再次按下它时再次按下disable它会使TIMER开始计数两次快。

@IBAction func start(_ sender: Any) {
timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(CountUpVC.action), userInfo: nil, repeats: true)

提前致谢。

1 个答案:

答案 0 :(得分:0)

最好在计时器上观察一下:

var timer : Timer? {
    didSet {
        start.isEnabled = !(timer?.isValid ?? false)
    }
}

当您将其设为无效时,您应将其设为nil以触发didSet并再次启用该按钮:

timer?.invalidate()
timer = nil