@interface someview:UIView{
NSTimer* timer;
}
@end
@implementation someview
-(void)dealloc{
NSLog(@"dealloc someview");
[timer invalidate];
timer = nil;
}
-(void)runTimer{
//
}
-(void)someMethod{
timer = [NSTimer timerWithTimeInterval:2.0f target:self selector:@selector(runTimer) userInfo:nil repeats:YES];
}
@end
Освобождение someview НЕ приведет к вызову Dealloc, и таймер продолжит работать.
Если я закомментирую часть "timer = [NSTimer schedule....", будет вызван Dealloc. Это означает, что вся остальная часть моего кода работает правильно, а виноват таймер. Метод runTimer пуст, а это значит, что это просто таймер.