Я использую UINavigationController: в моем первом представлении есть кнопка UIB, которая выдвигает другое представление, используя этот код
- (IBAction)gototrack:(id)sender {
map *map2 = [[map alloc] initWithNibName:@"map" bundle:[NSBundle mainBundle]];
[self.navigationController pushViewController:map2 animated:YES];
[map2 release];
}
В этом втором виде есть карта, которая указывает положение объекта.
Этот объект движется быстро, поэтому мне нужно обновлять позицию каждую секунду: я делаю это с помощью NSTimer, который вызывает метод, который вычисляет новые координаты и обновляет карту.
Хорошо, все работает нормально, но когда пользователь открывает окно (с обычной кнопкой на панели навигации), это второе представление не может быть освобождено, потому что NSTimer все еще работает!
Что я могу сделать, чтобы сделать недействительным и освободить NSTimer, когда пользователь открывает это второе представление?
Есть ли некоторые методы, вызываемые автоматически? (Я пробовал, но ничего)
Спасибо!