2012-03-13 3 views
0

У меня есть собственная пользовательская клавиатура в uiview, которую я добавляю в UIWindow в определенных ситуациях.Предотвращение отображения UIKeyboard на экране UISearchBar

Я переключаюсь между стандартным UIKeyboard и моей пользовательской клавиатурой с помощью кнопки.

Проблема: когда у меня есть пользовательская клавиатура, уже показанная на экране, и я нажимаю UISearchBar, я получаю стандартную UI-клавиатуру, показанную выше моей. Что я ожидаю - это подавить показ Sandard UIKeyboard, когда у меня есть свой пользовательский, который уже отображается на экране.

Я перехватываю событие клавиатуры, но, похоже, на этом мероприятии слишком поздно это делать.

Я также пробовал подклассифицировать UISearchBar и получить контроль над его UITextField, чтобы получить Shouldbegintextediting, но он, похоже, не работает ... (FYI UISearchBar не имеет события bebintintediting в протоколе, только для uitextfiled).

Кроме того, в UISearchBar нет свойства «inputView».

Я тестировал это на iOS 5.1.

Любой, у кого есть опыт в этом вопросе?

Спасибо.

ответ

0

Установите inputView в поле поиска на пользовательскую клавиатуру.

+0

Нет свойства inputView в UISearchBar. Я обновил свой вопрос, чтобы это было более ясно. – Sasho

+1

Тогда вам нужно будет создать собственное поле поиска. – Jesper

+0

Да, я собирался это сделать. Спасибо, Йеспер. Я просто подумал, что может быть более «естественный» способ. – Sasho

Смежные вопросы