Как ценить NSTimer - PullRequest
       1

Как ценить NSTimer

0 голосов
/ 19 мая 2011

Я делаю на приложение, в котором пользователь должен выбрать время, например, 5 минут или 10 минут или 15 минут, и после этого таймер будет работать около 15 секунд и будет вызывать другую функцию. Таймер должен запускаться после каждых 15 секунд, я реализовал все вышеперечисленное и это работает, единственное, чего я не получаю, это как запустить NSTimer в течение 5 минут или 10 минут с таймфреймом 15 секунд, как таймер должен работать с интервалом времени около 15 секунд и через 5 минут он должен остановиться.

Ответы [ 3 ]

2 голосов
/ 19 мая 2011

Вы запускаете таймер каждые 15 секунд, и в методе срабатывания таймера продолжайте добавлять время, а когда время достигнет 10 минут (или 15 минут), остановите таймер.

[NSTimer scheduledTimerWithTimeInterval:15.0f target:self selector:@selector(timerFireMethod:) userInfo:nil repeats:YES];

-(void) timerFireMethod:(NSTimer *) theTimer {
    _elapsedTime += 15.0f;
    if (_elapsedTime >= 5.0 * 60) {
        // elapsed time is 5 mins.
        [theTimer invalidate];
    }
}
0 голосов
/ 19 мая 2011

Вы должны проверить nsdate как глобальный в appdelegate (статический) или в любом другом месте и один в функции таймера, который вы вызываете .. Затем установите интервал времени на 15 секунд и проверьте, имеет ли текущая минута разницу в 5 минут от глобального таймера, еслиэто совпало, затем остановите таймер

0 голосов
/ 19 мая 2011

Вы можете использовать 2 разных NSTimers, один из которых срабатывает каждые 15 секунд, второй - через 5 минут и останавливает первый.Может ли это работать для вас?

...