一组简化的方法来演示正在发生的事情:
- (void)timerDidFire {
NSLog(@"fire");
}
- (void)resetTimer:(NSTimer *)timer {
if (timer) [timer invalidate]; // timer = nil; here doesn't change anything
NSLog(@"%@", timer);
timer = [NSTimer ...Interval:1 ... repeats:YES];
}
- (IBAction)pressButton {
[self resetTimer:myTimer];
}
清除我做错了什么,但是什么?为什么每次按下都会有一个额外的计时器?