Проблема с NSTimer вызвана внутри моего -parserDidEndDocument - PullRequest
1 голос
/ 11 февраля 2011

У меня есть объект NSTimer.

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

Метод 'timerAction' прекрасно повторяется при вызове таймера из метода viewDidLoad, но когда я вызываю таймер из parserDidEndDocument, метод timerAction запускается только один раз,Почему это?

1 Ответ

1 голос
/ 11 февраля 2011

вы можете попробовать запустить таймер в главном потоке.

Попробуйте это

создайте новый метод, включающий код, для запуска таймера, например: -

-(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]
...