KeyBoard блокируется после увольнения поповера
В контроллере просмотра есть несколько текстовых полей, в которых некоторые из них настроены (одно нажатие на эти текстовые поля запускает поповерный контроллер, из которого пользователь может выбрать опцию, которая будет отображаться в текстовом поле с нажатием).
У меня есть жест касания на контроллере вида для отклонения клавиатуры (если она на экране).
Клавиатура блокируется (если она видна), когда я открываю контроллер поповера при нажатии на настроенное текстовое поле. Клавиатура не закрывается, даже если я коснусь родительского представления или кнопки отклонения на клавиатуре.
Я пробовал эти 2 фрагмента, чтобы скрыть клавиатуру, но она не работает
[self.scrollView endEditing:YES];
[[[UIApplication sharedApplication] keyWindow] endEditing:YES];
1 ответ
Вы можете использовать делегат textfields, чтобы он не представлял клавиатуру, а вместо этого представляете popover самостоятельно, реализуя этот метод textFieldShouldBeginEditing.
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
if(textField == myCustomTextField) {
[self openCustomPopover];
return NO;
}
return YES;
}
подробнее о методах его делегатов здесь https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITextFieldDelegate_Protocol/index.html: