Метка оси во Flot

Я запускаю повторяющийся NSTimer после 4-секундной задержки, используя следующий код:

- (void)viewDidLoad {
    [self performSelector:@selector(startTimer) withObject:self afterDelay:4];
}
- (void)startTimer {
    NSTimer *mytimer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(doSomething) userInfo:nil repeats:YES];
}
- (void)doSomething {
    NSLog(@"What up!");
}

Проблема в том, что мне может потребоваться отменить вызов startTimer до истечения 4 секунд. Есть способ сделать это? Я вообще-то предпочел бы вообще не использовать performSelector (кажется беспорядочным). Если бы только у NSTimer было что-то вроде этого…

NSTimer * mytimer = [NSTimer scheduleTimerWithTimeInterval: 1.0 afterDelay: 4.0 цель: я селектор: @selector (doSomething) userInfo: nil Repeats: YES];

… тогда это было бы идеально, поскольку я мог бы просто назвать следующее:

[myTimer invalidate];

Любая помощь или советы приветствуются =)

PS Я нашел что-то под названием cancelPreviousPerformRequestsWithTarget в справочнике по классу NSObject. Однако не похоже, что я могу вызвать метод, откуда запускается этот код. Если вы вернетесь на правильный путь, ваши отзывы приветствуются!

5
задан Timbo 6 April 2011 в 08:14
поделиться