UISearchDisplayController не отображает клавиатуру при касании текстовой области - PullRequest
2 голосов
/ 06 февраля 2012

У меня есть UITableView в контроллере, который вложен в UITabBar.

. Взаимодействие в Интерфейсном Разработчике до сих пор не установлено, программно ничего не происходит с точки зрения переключения представлений.

Я добавил UISearchDisplayController в качестве заголовка моего UITableView.Он отображается нормально, и когда я нажимаю на область ввода текста, появляется кнопка отмены, и появляется черный наложение.

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

Поэтому, по сути, у меня есть две проблемы:

  1. Клавиатура не появляется при начале редактирования текста на UISearchBar из UISearchDisplayController

  2. UISearchBar не теряет фокус при нажатии кнопки отмены.

Что я делаю не так?

Ответы [ 2 ]

1 голос
/ 07 февраля 2012

Файл .xib, в котором была моя панель вкладок, содержал окно UIWindow.

Это привело к всевозможным сумасшествиям, и в итоге я отказался от попыток сделать это с помощью построителя интерфейса и прибегнул к созданию UITabBar в коде, тем самым не создавая второго UIWindow.

Это решило проблемы, и UISearchDisplayController вел себя правильно.

0 голосов
/ 06 февраля 2012

отметьте этот метод в UISearchBarDelegate:

- (void)searchBarCancelButtonClicked:(UISearchBar *) searchBar;

Попробуйте посмотреть, вызывается ли это, и выполните удаление, связанное с клавиатурой, здесьЕсли нет, попробуйте сделать еще один UISearchDisplayController.(На самом деле я никогда не использую стандартный viewController).Также убедитесь, что делегат установлен правильно.

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