Stop and Reset NSTimer

前端 未结 2 1367
小蘑菇
小蘑菇 2021-01-19 07:53

I have a simple timer using that is activated with a button is pushed. It runs from 60 to 0 no problem but what I want is to stop and reset the timer on push button. I have

相关标签:
2条回答
  • 2021-01-19 08:34

    What do you mean to stop the timer? Timer is not going to stop. You would like to have to have countDownLabel.text to show 60? When you invalidate the timer it will stop running and calling timerRun method If you want to restart the timer just call setTimer function again. I think what you meant is to have countDownLabel.text = @"60" after [countdownTimer invalidate]; and when you click the button again the timer will start again and will change the label. Let me know if this is what you were looking for.

    As Christian said you have to reset the secondCounter

    secondCounter = 0;
    
    0 讨论(0)
  • 2021-01-19 08:47

    You need to set the seconds down to 0, otherwise the you always invalidate your timer, but never start it again:

    - (IBAction)timerStart:(id)sender {
        if(!secondCounter == 0) {
            [countdownTimer invalidate];
            secondCounter = 0;
        }
        else {
            [self setTimer];
        }
    }
    
    0 讨论(0)
提交回复
热议问题