Селектор должен иметь следующую подпись:
- (void)timerFireMethod:(NSTimer*)theTimer
так что вам нужно
@selector(trigger:)
- изменить -
Возможно, вы делаете это где-то еще, но в коде, который вы включили, вы на самом деле не запускаете таймер. Вы должны добавить его в NSRunLoop, прежде чем он вообще сможет инициировать какие-либо события.
[[NSRunLoop currentRunLoop] addTimer:nst forMode:NSDefaultRunLoopMode];
Если я правильно прочитал примеры. Я использовал только один метод init, который автоматически добавляет его к текущему NSRunLoop. Вы действительно должны посмотреть на документы разработчика, которые кто-то включил в комментарии к моему посту.