我有以下内容,
class someViewController : ViewController{
var timer:Timer? = nil
override func viewDidLoad() {
timer = Timer.scheduledTimer(timeInterval: 5.0, target: self, selector: #selector(fire), userInfo: nil, repeats: true)
}
@objc func fire(){
print("fired")
}
}
消防功能从来没有击中,我不知道为什么,我错过了什么?
问题是:计时器需要在主线程上调度:
DispatchQueue.main.async {
let timer = Timer.scheduledTimer(timeInterval: self.BLINK_TIMEOUT, target: self, selector: #selector(self.clearTimer), userInfo: nil, repeats: false)
}
希望有帮助!