簡體   English   中英

NSTimer僅在第一次工作(快速)

[英]NSTimer work only the first time (Swift)

我不知道為什么我的計時器僅在第一次工作,這是代碼:當我按下“ timergo”按鈕時,它可以工作,但是當我按下並按下按鈕時,它就無法工作。

@IBAction func timergo(sender: AnyObject) {      
          startTimer()
    }

    var timer:NSTimer!
    var timerVal:Int = 5

    func startTimer()
    {       
        timer = NSTimer.scheduledTimerWithTimeInterval(1.0
            , target: self, selector: Selector("updateTimer:"), userInfo: nil, repeats: true)
    }

    func updateTimer(dt:NSTimer)
    {
        timerVal--

        if timerVal==0{               
            println("FINISH")
        }else if timerVal < 0{
            timer.invalidate()
            //Stop
        } else{
           justTime.text = String(timerVal)
            println("\(timerVal)")
        }   
    }

按下按鈕時,您需要重置timerVal。 第二次啟動時,timerVal仍<0,因此直接變為無效。

第一次按下該按鈕時, timerVal為5; 第二次小於0。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM