Какао Touch - Таймеры - PullRequest
       2

Какао Touch - Таймеры

1 голос
/ 06 августа 2010

Как я могу сделать таймер, который отсчитывает от 3, а затем запускает метод?Как бы я это сделал?

Ответы [ 3 ]

3 голосов
/ 06 августа 2010

Это отличается от таймера, считающего от 0 до 3?В любом случае он будет ждать три секунды.

[NSTimer scheduledTimerWithTimeInterval:3.0 target:self selector:@selector(myMethod:) userInfo:nil repeats:NO];

2 голосов
/ 06 августа 2010

Лучше всего использовать performSelector:withObject:afterDelay: метод:

[self performSelector:@selector(myMethod) withObject:nil afterDelay:3.0f];

Или, если метод принимает 1 параметр:

[self performSelector:@selector(myMethod:) withObject:parameter afterDelay:3.0f];

Если метод принимает несколько параметров, вам необходимоиспользовать NSInvocation класс

1 голос
/ 06 августа 2010
- (void) handleTimer: (NSTimer *) timer
{
    do some work here...
} // handleTimer

// at some point in your controller
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval: 3.0
                 target: self
                 selector: @selector(handleTimer:)
                 userInfo: nil
                 repeats: NO];
...