UIKeyboard не прячется, когда я касаюсь вне клавиатуры - PullRequest
8 голосов
/ 31 января 2012

Я не придумываю способ скрыть клавиатуру, когда я прикасаюсь к клавиатуре, есть ли событие, которое может скрыть клавиатуру, если я щелкну вне клавиатуры. Спасибо

Ответы [ 3 ]

12 голосов
/ 31 января 2012

В ViewController.m запишите метод начала касаний. В этом методе напишите resignFirstResponder

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
 [textField resignFirstResponder];

}
8 голосов
/ 21 августа 2013

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

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {

    UITouch *touch = [[event allTouches] anyObject];

    if (![[touch view] isKindOfClass:[UITextField class]]) {
        [self.view endEditing:YES];
    }
    [super touchesBegan:touches withEvent:event];
}
0 голосов
/ 31 января 2012

Нет, вам нужно сделать это самостоятельно.Обычный подход - поместить прозрачную кнопку поверх экрана (но под текстовым полем), а затем на действие для кнопки ...

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