Как обнаружить нажатие пользователем iPad на кнопку скрытия клавиатуры? - PullRequest
15 голосов
/ 20 ноября 2010

В моем приложении есть сложная логика, связанная с сокрытием и отображением клавиатуры. Я заинтересован в том, чтобы определить, когда пользователь (у которого есть iPad) специально нажимает кнопку скрытия клавиатуры iPad:

alt text

Я не заинтересован в определении, когда клавиатура должна скрываться, только когда пользователь фактически физически нажимает на эту кнопку. Есть предложения?

Спасибо!

Ответы [ 2 ]

21 голосов
/ 12 сентября 2011

Я искал точно такое же решение и все-таки нашел его в документации. Вы получаете целый пакет уведомлений клавиатуры:

- UIKeyboardWillShowNotification
- UIKeyboardDidShowNotification
- UIKeyboardWillHideNotification
- UIKeyboardDidHideNotification
- UIKeyboardWillChangeFrameNotification
- UIKeyboardDidChangeFrameNotification

Меня интересовало "UIKeyboardWillHideNotification". Так просто реализовано:

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

Et voilà! Надеюсь, что это поможет, даже если ответ опоздал на год.

0 голосов
/ 21 июня 2011

Я не думаю, что Apple это позволяет, боюсь.

Но, возможно, вы могли бы создать невидимое представление (view.opaque = FALSE; view.alpha = 0;), расположенное чуть выше вышеупомянутой кнопки, которая получает прикосновения в качестве первого респондента (чтобы вы получили событие), а затем пересылает его следующему (клавиатуре). Однако я не знаю, возможно ли разместить вид над клавиатурой, даже «незаконно».

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