Intereting Posts
Как оживить CALayer, подключенный к UIImageView? Удаление последних символов NSString до тех пор, пока оно не попадет в разделитель Как отметить уведомление как прочитанное после получения ответа на набор облачных наборов? Постройте iPhone toolchain на iOS 5 и Mac OS X 10.7 Что означает ключевое слово static в методе класса Сохранение и освобождение в сеттере в объекте C iOS: читатель ZBarCode не работает с пользовательским кликом UISegmentedControl UIBezierPath со случайной формой границы в Swift Установить / удалить приложение ios программно из приложения Mac Попытка установить Pod, но получить ошибку C4Image фильтрует все выцветание до белого Как обрабатывать огромные объемы данных для одновременного выполнения (NSOperationQueue или блоки) Выход из Facebook в Objective C с помощью метода LOGOut FBSDKLoginManager Получение текущей фоновой операции и ее обработка Почему – не нужен ниль для указания конца аргументов?

UISearchDisplayController не отображает клавиатуру при касании области текста

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

Взаимодействие все подключено в Interface Builder до сих пор, ничего не делается программно с точки зрения переключения вида.

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

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

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

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

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

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

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

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

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

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

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

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