1
我使用NSTimer
進行秒錶設置。我已經使用了三個按鈕發揮,暫停和停止。所有三個工作正常。但是當我點擊玩按鈕不止一次它開始快速計數。之後暫停和停止按鈕不起作用。我明白,通過多次點擊玩法,我開始了許多計時器,但是我沒有得到的是爲什麼暫停和停止不工作?NSTimer快速進入
我使用NSTimer
進行秒錶設置。我已經使用了三個按鈕發揮,暫停和停止。所有三個工作正常。但是當我點擊玩按鈕不止一次它開始快速計數。之後暫停和停止按鈕不起作用。我明白,通過多次點擊玩法,我開始了許多計時器,但是我沒有得到的是爲什麼暫停和停止不工作?NSTimer快速進入
爲該類設置全局定時器對象。
之前播放檢查定時器檢查isValid
像這樣if(timer.isValid== false)
然後啓動計時器否則什麼都不做。關於到停止和暫停另外,如果計時器的IsValid然後停止或暫停。
感謝您的回答ios學習者。但這是解決方案。我想知道爲什麼我們不能停止計時器。爲什麼timer.invalidate()不起作用? – dvshrwt
我認爲你每次創建新的對象計時器,當你創建新的對象舊對象將運行,你失去了舊的計時器引用,當你試圖使無效只新創建將無效和舊的一個運行,但你失去了它的參考所以你不能使它失效 – jay
定時器對象是全局的。查看播放按鈕的代碼@IBAction func playButton(sender:AnyObject){ // if check { // check = false timer = NSTimer.scheduledTimerWithTimeInterval(1,target:self,selector:Selector(「incrementor」 ),用戶信息:無,重複:真) } – dvshrwt