NSNotificationCenter w odniesieniu do ViewWillAppear i ViewWillDisapper

Mam prosty viewController, którego chcę słuchaćUIKeyboardWillHideNotification. Dlatego mam następujący kod:

- (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];
}

Próbuję zdecydować, kiedy usunąć viewController jako obserwatora centrum powiadomień. Muszę tylko wiedzieć oUIKeyboardWillHideNotification kiedy kontroler widoku jest na ekranie, myślę o dodaniu:

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

Czy to wystarczy? Czy jest taka szansaviewDidUnload lubdealloc zostanie wywołany, gdy viewController jest nadal na ekranie? Zauważ, że używam bardzo podstawowegoUINavigationController dla przepływu mojej aplikacji.

questionAnswers(2)

yourAnswerToTheQuestion