Я получаю дважды уведомление о том, что клавиатура нажата, и один раз - о том, что клавиатура вверх ...
В моем классе я поставил уведомления для клавиатуры:
-(id)init… {
…
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide:) name:UIKeyboardWillHideNotification object:nil];
…
}
для настройки кадра на слайде клавиатуры.
Позже во время урока я использую 'ABPeoplePickerNavigationController'
, чтобы выбрать адрес.
…
ABPeoplePickerNavigationController *userPicker=[[ABPeoplePickerNavigationController alloc] init];
…
[viewController presentModalViewController:userPicker animated:YES];
…
Я обнаружил, что на ‘presentModalViewController’
я получаю дважды ‘UIKeyboardWillHideNotification’
, НО один раз ‘UIKeyboardWillShowNotification’
- когда сборщик уходит.
Довольно странно.
Я пытался удалить наблюдателя для ‘UIKeyboardWillHideNotification’
из инициализации класса (чтобы найти любые двойные объявления наблюдателя). Однако после этого вообще не удаляйте ‘UIKeyboardWillHideNotification’
уведомлений.
Почему я получаю различное количество уведомлений на клавиатуре вверх и вниз?
Может я что-то не так делаю?
Спасибо.