обнаружить клавиатуру iPad - PullRequest
       0

обнаружить клавиатуру iPad

7 голосов
/ 20 августа 2010

Привет, есть ли способ обнаружить кнопку скрытия клавиатуры iPad? Я имею в виду, когда пользователь нажимает эту кнопку:

alt text

что-то случится!

Ответы [ 4 ]

17 голосов
/ 20 августа 2010

Я не уверен, что вы хотите достичь, но, возможно, это может вам помочь: зарегистрируйтесь с NSNotificationCenter, чтобы получить UIKeyboardWillHideNotification и / или UIKeyboardDidHideNotification.

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(myKeyboardWillHideHandler:)
                                             name:UIKeyboardWillHideNotification
                                           object:nil];

...

- (void) myKeyboardWillHideHandler:(NSNotification *)notification {
    NSLog(@"Keyboard wants to hide. What a coward.");
}
0 голосов
/ 03 декабря 2014

с Javascript

Я нашел workaroud для iPad IOS7. Я протестирую на IOS8, чтобы убедиться, что он работает. Поэтому в основном я создаю слушателя для каждого события FOCUSOUT (для всех моих текстов) и вызываю свою функцию.

Он срабатывает, когда у вас открытая клавиатура и когда вы закрываете «клавиатуру». Он не срабатывает при выборе другого текстового поля или кнопки, потому что он нацелен на нуль. Если вы используете в сочетании с keydown, вы можете сохранить несколько значений и вызывать функцию отправки только после того, как отпустите клавиатуру.

document.addEventListener('focusout', function(e) {
        if (e.relatedTarget == null){
            alert("close keyboard without click on something else");
            callYourFunction();
           }
    });
0 голосов
/ 31 мая 2013

[[NSNotificationCenter defaultCenter] addObserver: self selector: @selector (textFieldShouldReturn :) name: UIKeyboardWillHideNotification object: nil];

На самом деле происходит сбой на ходу.

Но если вы вызываетепользовательский метод, например: [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector (myCustomeMethodToResignTextFieldResponder) name: UIKeyboardWillHideNotification object: nil];

Тогда он будет работать нормально ...: -)

0 голосов
/ 22 апреля 2013

установите это значение на viewDidLoad

// register to track event when user presses hide keyboard button on bottom right cornor for iPAD
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textFieldShouldReturn:) name:UIKeyboardWillHideNotification object:nil];

, и это заставит ваш метод делегата - (BOOL)textFieldShouldReturn:(UITextField *)textField; вызываться при нажатии кнопки вниз на клавиатуре в iPAD.

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