Трудности заставить UIKeyboard уйти в UINavigationController - PullRequest
0 голосов
/ 05 апреля 2011

У меня есть UINavigationController с двумя экранами - каждый экран со своим собственным контроллером навигации.На первом экране нет полей ввода, но на втором экране (который помещается в стек контроллера Nav) есть UITextView.

UITextView *commentTextView;

Мои вопросы: Как мнезаставить UIKeyboard исчезнуть, когда пользователь использует кнопку «Назад» на панели контроллера Nav, чтобы вытолкнуть UIView из стека контроллера Nav и показать предыдущий экран?

Я пытался использовать [commentTextView resignFirstResponder] в нескольких местахно это никогда не работает.Клавиатура остается видимой даже после исчезновения UIView.

Я попытался поместить resignFirstResponder вызов:

-(void)viewWillDisappear:(BOOL)animated

представления, а также я попытался зарегистрировать уведомление, когда UITextView завершил редактирование, например:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textChanged:) name:UITextViewTextDidBeginEditingNotification object:nil];

но, опять же, это не работает, когда пользователь закрывает UIView с помощью кнопки назад Nav Controller.

Я не уверен, что я блестяще описал этот вопрос(мой первый день переполнения стека!), но у кого-нибудь есть идеи по этому поводу?

Ответы [ 3 ]

3 голосов
/ 05 апреля 2011
0 голосов
/ 05 апреля 2011

Попробуйте отправить -endEditing: к себе в -viewWillDisappear:.

0 голосов
/ 05 апреля 2011

Возможно, попробуйте отправить сообщение resignFirstResponder вашему контроллеру представления вместо вашего TextView?

- (void)viewWillDisappear:(BOOL)animated {
    [self resignFirstResponder];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...