swift xcode-定时器运行时禁止按下UIbutton
我有一个名为start的按钮,它可以启动计时器计数,我想swift xcode-定时器运行时禁止按下UIbutton,swift,xcode,timer,Swift,Xcode,Timer,我有一个名为start的按钮,它可以启动计时器计数,我想禁用它,防止计时器计数时再次按下它,否则会使计时器开始计数的速度加快一倍 @IBAction func start(_ sender: Any) { timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(CountUpVC.action), userInfo: nil, repeats: true) 提前感谢。最好在计时器上设置观察者
禁用它,防止计时器计数时再次按下它,否则会使计时器开始计数的速度加快一倍
@IBAction func start(_ sender: Any) {
timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(CountUpVC.action), userInfo: nil, repeats: true)
提前感谢。最好在计时器上设置观察者:
var timer : Timer? {
didSet {
start.isEnabled = !(timer?.isValid ?? false)
}
}
当您使其无效时,应将其设置为nil
以触发didSet
,并再次启用该按钮:
timer?.invalidate()
timer = nil
最好在计时器上设置观察者:
var timer : Timer? {
didSet {
start.isEnabled = !(timer?.isValid ?? false)
}
}
当您使其无效时,应将其设置为nil
以触发didSet
,并再次启用该按钮:
timer?.invalidate()
timer = nil
谢谢,不过我还是没法用。我已经有了一个变量“var timer=timer(),我的uibutton名为“start”“我将把您的代码放在哪里@代码差异我为UIButton获取了错误的属性名称。现在再试一次如果没有成员,您使用的是什么Swift版本?尝试将其更改为仅启用
谢谢,尽管我仍然无法使其工作。我已经有一个变量“var timer=timer(),我的uibutton名为“start”,我将代码放在哪里?@code differention我为uibutton获取了错误的属性名称。请立即重试Says has no member isEnabled您使用的是什么Swift版本?请尝试将其更改为仅启用