当我使用IBAction创建一个新计时器并双击该按钮时,它会创建两个计时器。 如何编写代码,因此只有1个计时器,如果按下按钮,它不会创建新的计时器?
对不起我的英语不好,我13岁,来自德国。
以下是我用来创建计时器的代码:
- (IBAction)start:(id)sender;
{
progressBarUpdate = [NSTimer scheduledTimerWithTimeInterval:0.003 target:self selector:@selector(progressbarupdate) userInfo:nil repeats:YES];
//startet den timer
}
答案 0 :(得分:0)
将计时器作为成员变量保护并检查是否已存在
@implementation MyViewController {
NSTimer *_timer;
}
...
- IBAction)start:(id)sender {
if(!_timer) {
_timer = [[NSTimer timerWith...] retain];//with arc, forget the retain
}
}
...
@end
答案 1 :(得分:0)
在重新创建计时器之前检查progressBarUpdate.isValid是一种简单的方法