Как передать параметр методу, вызванному NSTimer? Мой таймер выглядит так:Передача параметров методу, вызванному NSTimer
[NSTimer scheduledTimerWithTimeInterval:4 target:self selector:@selector(updateBusLocation) userInfo:nil repeats:YES];
и я хочу, чтобы иметь возможность передать строку в метод updateBusLocation. Кроме того, где я должен определить метод updateBusLocation? В том же файле .m, что я создаю таймер?
EDIT:
На самом деле я до сих пор возникают проблемы. Я получаю сообщение об ошибке:
, истекающее приложение из-за неперехваченное исключение 'NSInvalidArgumentException', причина: '* - [MapKitDisplayViewController updateBusLocation]: непризнанный селектор направил к экземпляру 0x4623600'
Вот мой код:
- (IBAction) showBus {
//do something
[NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(updateBusLocation) userInfo:txtFieldData repeats:YES];
[txtFieldData release];
}
- (void) updateBusLocation:(NSTimer*)theTimer
{
NSLog(@"timer method was called");
NSString *txtFieldData = [[NSString alloc] initWithString:(NSString*)[theTimer userInfo]];
if(txtFieldData == busNum.text) {
//do something else
}
}
EDIT # 2: Не обращайте внимания на ваш пример кода, который отлично работает за помощь.
Твердая вопрос, который я уверен, тонна людей задавались в тот или иной момент. Благодаря! –