Как программно скрыть клавиатуру в iphone

Как программно скрыть клавиатуру в iphone?


person thndrkiss    schedule 06.04.2010    source источник


Ответы (5)


Сообщите подклассу UIResponder, который в настоящее время является первым респондентом, отказаться от своего статуса первого респондента:

[responder resignFirstResponder];
person glorifiedHacker    schedule 06.04.2010

Это просто:

ObjC

[[[UIApplication sharedApplication] keyWindow] endEditing:YES];

Быстрый

UIApplication.shared.keyWindow?.endEditing(true)

взгляните на Справочник по классам UIView для endEditing. Заставляет представление (или одно из его встроенных текстовых полей) отказаться от статуса первого респондента. И keyWindow - единственное окно, которое получает события клавиатуры, поэтому это решение гарантированно работает всегда.

person leviathan    schedule 16.04.2013

Вызовите это в своем ViewController

[self.view endEditing:YES];
person Philip J. Fry    schedule 12.12.2012

Если вы используете textview, тогда

- (BOOL)textView:(UITextView *)textView
 shouldChangeTextInRange:(NSRange)range
replacementText:(NSString *)text
{
  if ([text isEqualToString:@"\n"])
 {
    [textView resignFirstResponder];
    [self keyboardWillHide];
 }
}

и если вы используете текстовое поле, тогда

-(BOOL)textFieldShouldReturn:(UITextField*)textField;
 {

[textField resignFirstResponder];

 }
person iKambad    schedule 20.07.2013

Вот быстрая версия:

UIApplication.sharedApplication().sendAction("resignFirstResponder", to:nil, from:nil, forEvent:nil)
person Chathuranga Silva    schedule 10.11.2015