NSNotificationCenter относительно ViewWillAppear и ViewWillDisapper

У меня есть простой 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 когда viewcontroller находится на экране, поэтому яЯ думаю о добавлении следующего:

- (void) viewWillDisappear:(BOOL)animated
{
    [super viewWillDisappear:animated];
    [[NSNotificationCenter defaultCenter] removeObserver:self];
}

Достаточно ли этого? Есть ли шанс, чтоviewDidUnload или жеdealloc будет вызываться, пока viewController все еще находится на экране? Обратите внимание, что ям, используя очень простойUINavigationController для потока моего приложения.

Ответы на вопрос(2)

Ваш ответ на вопрос