Вопрос по nstimer, ios – Как сразу запустить NSTimer?
Мне нужно вызвать метод при запуске моего приложения, а затем вызывать один и тот же метод каждые 5 секунд.
Мой код довольно прост:
// Call the method right away
[self updatestuff:nil]
// Set up a timer so the method is called every 5 seconds
timer = [NSTimer scheduledTimerWithTimeInterval: 5
target: self
selector: @selector(updatestuff:)
userInfo: nil
repeats: YES];
Есть ли опция для таймера, чтобы он срабатывал сразу, а затем каждые 5 секунд?
4
ответа
ной строке кода. Таким образом, вы должны сделать это в 2 строки кода.
Сначала запланируйте таймер, а затем немедленно вызовите «огонь». на вашем таймере:
timer = [NSTimer scheduledTimerWithTimeInterval: 5
target: self
selector: @selector(updatestuff:)
userInfo: nil
repeats: YES];
[timer fire];
Когда вызывается пожар, временной интервал, в течение которого ваш таймер ожидает срабатывания, будет сброшен, поскольку он только что запустился, а затем продолжит работать после этого через указанный интервал - в данном случае, каждые 5 секунд.