У меня есть простой viewController, который я хочу прослушать UIKeyboardWillHideNotification
. Поэтому у меня есть следующий код:
- (void) viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardWillBeHidden)
name:UIKeyboardWillHideNotification object:nil];
}
- (void) keyboardWillBeHidden
{
[self.scrollView setContentOffset:CGPointMake(0, 0) animated:YES];
}
Я пытаюсь решить, когда удалить viewController в качестве наблюдателя центра уведомлений. Мне нужно знать о UIKeyboardWillHideNotification
только тогда, когда на экране отображается контроллер представления, поэтому я думаю о добавлении следующего:
- (void) viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
Этого достаточно? Есть ли шанс, что viewDidUnload
или dealloc
будут вызваны, пока viewController все еще находится на экране? Обратите внимание, что я использую очень простой UINavigationController
для потока моего приложения.
dealloc
? - person Anoop Vaidya   schedule 30.03.2013