所以我使用NSTimer每分钟运行一个函数,它会在正确的时间触发前3次左右的尝试然后它会突然开始每秒触发一次。我不知道为什么会这样?是否有人能够让我知道为什么NSTimer不一致地解雇?
这是我宣布计时器的行。
[NSTimer scheduledTimerWithTimeInterval:60.0f target:self selector:@selector(checkForLocation) userInfo:nil repeats:YES];
值得注意的是,我在viewDidAppear中声明了NSTimer。
感谢任何帮助,
谢谢。
答案 0 :(得分:0)
尝试通过声明属性为NSTimer
创建实例。编写一个初始化定时器的函数,不要忘记在重新初始化之前使其无效。在initializeMyTimer
。
-viewDidAppear
-(void) initializeMyTimer
{
if(myTimer)
{
[myTimer invalidate];
myTimer = nil;
}
myTimer = [NSTimer scheduledTimerWithTimeInterval:60.0f
target:self
selector:@selector(checkForLocation)
userInfo:nil
repeats:YES];
}