Каждый раз, когда я заканчиваю работу со своим NSTimer, я хочу сделать его недействительным и создать новый интервал, но он сохраняет как старый, так и новый интервал. Я хочу аннулировать NSTimes после нажатия кнопки offButton. Таймер перестает печатать «Работает», но когда я вызываю свой метод с другим интервалом, он печатает «Работает» для обоих интервалов.
Мой код выглядит примерно так:
-(void) fireTimer{
NSString *textValue = [sliderLabel text];
float value = [textValue floatValue];
[NSTimer scheduledTimerWithTimeInterval:value target:self selector:@selector(vibrate:) userInfo:nil repeats:YES];
}
- (void) vibrate:(NSTimer*)timer {
if(_offButton.selected){
[timer invalidate];
timer=nil;
}
NSLog(@"Working");
}