0

当我使用 IBAction 创建一个新计时器并双击该按钮时,它会创建两个计时器。我如何编写代码以便只有 1 个计时器,如果我按下按钮它不会创建新计时器?

对不起,我的英语不好,我 13 岁,来自德国。

这是我用来创建计时器的代码:

- (IBAction)start:(id)sender;
{
   progressBarUpdate = [NSTimer scheduledTimerWithTimeInterval:0.003 target:self selector:@selector(progressbarupdate) userInfo:nil repeats:YES];
   //startet den timer 
}
4

2 回答 2

0

将计时器安全地作为成员变量并检查是否已经存在

@implementation MyViewController {
    NSTimer *_timer;
}

...

- IBAction)start:(id)sender {
   if(!_timer) {
      _timer = [[NSTimer timerWith...] retain];//with arc, forget the retain
   }
}

...

@end
于 2013-04-27T12:13:03.870 回答
0

在重新创建计时器之前检查 progressBarUpdate.isValid 是一种简单的方法

于 2013-04-27T12:13:50.030 回答