我有一个NSTimer对象。
timer = [NSTimer scheduledTimerWithTimeInterval:0.02 target:self selector:@selector(timerAction) userInfo:nil repeats:YES];
[timer fire];
当从viewDidLoad方法调用计时器时,方法'timerAction'完美重复,但是当我从parserDidEndDocument调用计时器时,方法'timerAction'只运行一次。这是为什么?
答案 0 :(得分:1)
您可以尝试在主线程上运行计时器。
试试这个
创建一个包含代码的新方法,以启动计时器,如: -
-(void)createTimer{
timer = [NSTimer scheduledTimerWithTimeInterval:0.02 target:self selector:@selector(timerAction) userInfo:nil repeats:YES];
[timer fire];
}
在parserDidEndDocument
代表中,试试这个:
[self performSelectorOnMainThread:@selector(createTimer) withObject:[nil waitUntilDone:YES]