Я пытаюсь иметь блок кода, выполненный спустя 2 секунды после того, как я 'запущу' его.
Я думаю, что NSTimer может сделать это, но не может понять это.
Следующее сделает то, что вам нужно:
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval: 2
target:self
selector:@selector(handleTimer:)
userInfo:nil
repeats:NO];
Затем функция делегата:
-(void)handleTimer: (NSTimer *) timer
{
//code
}
NSTimer можно использовать, но другой вариант - использовать performSelector: withObject: afterDelay: Это в основном похоже на вызов метода (отправка сообщения ), что произойдет позже.
Этот пример отправляет сообщение doStuff: после задержки:
[self performSelector:@selector(doStuff:) withObject:self afterDelay:2];
, что вызывает вызов этого метода через 2,0 секунды:
-(void)doStuff:(id)sender
{
/// do something
}
Вы должны быть в состоянии установить NSTimeInterval
на 2.0 секунды и он должен сработать через это время. Что вы видите? Какой код вы используете для вызова таймера?