UITableViewCell и resignFirstResponder - PullRequest
4 голосов
/ 27 июля 2011

У меня есть UITableView, содержащий в каждой ячейке UITextField. Когда пользователь нажимает на UITextField, как и ожидалось, клавиатура всплывает.

Я реализовал в моем делегате tableView: didSelectRowAtIndexPath: метод для отклонения клавиатуры с resignFirstResponder, отправленным последнему UITextField используемому.

Все работает нормально, если отображается ячейка с последним использованным UITextField.

Теперь, если я прокручиваю вниз до нижней части таблицы и нажимаю на строку, resignFirstResponder отправляется на скрытый UITextField и не скрывает клавиатуру. Также не выдает ошибку.

Как я могу скрыть клавиатуру в таких случаях?

Ответы [ 4 ]

4 голосов
/ 27 июля 2011

Посмотрите на UITextFieldDelegate и поместите метод

[textField resignFirstResponder];

в одну из функций обратного вызова.Я особенно предпочитаю:

- (BOOL)textFieldShouldReturn:(UITextField *)textField;
0 голосов
/ 27 июля 2011
-(IBAction)hidekey:(id) sender{

[textField resignFirstResponder];
}

, если вы используете Интерфейсный конструктор, затем отметили выход текстового поля и в файле .m используйте вышеуказанную функцию и определите для этого текстового поля.Это будет работать.

0 голосов
/ 27 июля 2011

Пожалуйста, используйте этот учебник для Создайте ключ возврата для UIKeyboardTypeNumberPad ! Это должно сэкономить вам много времени.

0 голосов
/ 27 июля 2011

Вы пытались вызвать endEditing:YES метод UITextField?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...