Как заставить клавиатуру уйти? - PullRequest
1 голос
/ 19 июня 2010

Я добавил текстовое поле, и когда я нажимаю там, клавиатура скользит вверх. Какие шаги необходимы, чтобы клавиатура показала «ОК», которая на самом деле действительно работает? Я имею в виду ... нажатие кнопки «ОК» или «Возврат» ничего не дает.

Есть ли какой-нибудь KeyboardDelegateProtocol, где я должен сделать что-то странное, например

-(BOOL)shouldReallyGoAway {
    return YES;//of course!
}

Можно ли прочитать руководство по программированию клавиатуры на 200 страниц? Не могу найти ...

Ответы [ 2 ]

5 голосов
/ 19 июня 2010

Необходимо обработать нажатие кнопки «ОК» (событие Did End On Exit) и изменить статус первого респондента для текстового поля.

- (IBAction)textFieldDoneEditing:(id)sender {
[sender resignFirstResponder];

}

Возможно, вы захотите выполнить несколько других действий - например, нажатие фона. Вам понадобится невидимая кнопка, которая покроет ваш фон и перехватит метки, а также IBOutlet для вашего текстового поля (поскольку ваша sender будет кнопкой, а не текстовым полем)

2 голосов
/ 19 июня 2010

Никаких оснований для руководства на 200 страниц нет, оно прямо во введении UITextField, который вы вероятно используете.

Используйте

[aTextField resignFirstResponder];

, чтобы заставить клавиатуру исчезнуть программно.

Кроме того, существует UITextFieldDelegate с соответствующими методами для возврата, которые вы можете использовать, например -textFieldShouldReturn:.

например

- (BOOL) textFieldShouldReturn:(UITextField *)textField {
    [textField resignFirstResponder];
    return YES;
}
...