У меня есть приложение навигации развертки с тремя уровнями UIViewControllers. В каждом контроллере представления у меня есть UITextField, где я пытаюсь разделить UIKeyboard на подклассы для каждого. Мой вопрос состоит в том, где "установить" уведомления и "сбросить" их.
У меня есть уведомления:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide:) name:UIKeyboardWillHideNotification object:nil];
так это это лучше всего для установки их в viewDidLoad событии? Или viewWillAppear событие?
И аналогично для [[NSNotificationCenter defaultCenter] removeObserver:self];
Я не хочу иметь несколько keyboardWillShow:
события, которые назовут, поскольку я выполняю развертку.
Большое спасибо, Brett
Я предлагаю поместить их в методы init
и dealloc
, поскольку viewWillAppear
и viewWillDisappear
будут вызываться каждый раз, когда представление появляется или исчезает, что не нужно для регистрации/дерегистрации уведомлений.