Когда отказываться от подписки на NSNotification в UIView

Я использую следующие NSNotifications в UIView, чтобы представление можно было уведомлять, когда появляется UIKeyboard, и настраивать его положение (фрейм) на экране:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardDidShow:) name:UIKeyboardDidShowNotification object:nil];

На два вышеупомянутых уведомления подписываются в -init метод UIView. Где лучше всего отказаться от подписки на эти уведомления, когда представление исчезло за пределами экрана? В настоящий момент приложение дает сбой всякий раз, когда UIKeyboard появляется в другом представлении, предположительно из-за того, что уведомление все еще отправляется в выпущенный тогда UIView.

Кроме того, есть ли лучшее место для подписки на уведомления, помимо метода -init ?

Спасибо за любую помощь.

16
задан Skoota 20 November 2011 в 10:01
поделиться