Редактировать: Хорошо, это странно ... После обширной отладки я обнаружил, что, хотя текстовые поля переставали статус первого респондента (я вижу, что больше нет мигающей полосы), клавиатура НЕ УХОДИТ! Может быть, это заслуживает другого вопроса.
У меня есть несколько текстовых полей в пользовательском подклассе uiviewcontroller, который отображается во всплывающем окне. Всплывающее окно отображается в виде кнопки панели. Я хочу, чтобы клавиатура выключалась, когда всплывающее окно отклонено (либо пользователем, снова нажимающим кнопку панели, либо нажатием за пределами всплывающего окна. Из контроллера представления, который отображает всплывающее окно, когда всплывающее окно отклонено, в любой из двух мод Я звоню
[optionsController dismissFirstResponder];
Optionscontroller - это подкласс uiviewcontroller в поповере. Увольнение - это метод, который я определил:
-(void)dsimissFirstResponder {
[nameField resignFirstResponder];
[descriptionField resignFirstResponder];
[helpField resignFirstResponder];
}
Это три IBoutlets, которые я подключил в xib к текстовым полям.
Это не работает. Любая помощь с этим будет принята с благодарностью.
Код называется так:
[optionsController dismissFirstResponder];
[poppoverController dismissPopoverAnimated];
Я установил точку останова в dismissFirstResponder, и она вызывается, когда я ожидал, что она будет. Я также проверил, и все три IBOutlets не равны нулю во время этого вызова функции. Это единственные текстовые поля во всем приложении, поэтому я не уверен, как еще можно положить клавиатуру вниз.