在我的-parserDidEndDocument中调用NSTimer的问题

时间:2011-02-11 09:23:32

标签: iphone objective-c nstimer

我有一个NSTimer对象。

timer = [NSTimer scheduledTimerWithTimeInterval:0.02 target:self selector:@selector(timerAction) userInfo:nil repeats:YES];
[timer fire];

当从viewDidLoad方法调用计时器时,方法'timerAction'完美重复,但是当我从parserDidEndDocument调用计时器时,方法'timerAction'只运行一次。这是为什么?

1 个答案:

答案 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]