При настройке строки поиска UISearchController в titleView navigationItem панель поиска не может быть отредактирована.Невозможно отредактировать UISearchController UISearchBar в navigationItem titleView
В моем представленииDidLoad Я настраиваю UISearchController.
self.searchViewController = [self.storyboard instantiateViewControllerWithIdentifier:NSStringFromClass([SearchViewController class])];
self.searchViewController.delegate = self;
self.searchController = [[UISearchController alloc] initWithSearchResultsController:self.searchViewController];
self.searchController.delegate = self;
self.searchController.searchResultsUpdater = self;
self.searchController.searchBar.delegate = self;
self.navigationItem.titleView = self.searchController.searchBar;
Я не могу нажать панель поиска. Курсор не отображается и взаимодействие с пользователем отсутствует.
Как ни странно, если я инициализирую UISearchController локально, не устанавливая его для свойства, тогда я могу отредактировать строку поиска, просто никаких обратных вызовов делегатов.
self.searchViewController = [self.storyboard instantiateViewControllerWithIdentifier:NSStringFromClass([SearchViewController class])];
self.searchViewController.delegate = self;
UISearchController *searchController = [[UISearchController alloc] initWithSearchResultsController:self.searchViewController];
searchController.delegate = self;
searchController.searchResultsUpdater = self;
searchController.searchBar.delegate = self;
self.navigationItem.titleView = searchController.searchBar;
Другое интересное поведение заключается в том, что кнопка очистки работает (если какой-либо текст установлен на панели поиска при инициализации).
У меня такая же проблема, и ни один из предложенных ответов не работает. вам удалось найти решение для этого? –
@ Сильвия Хишам да, что сработало для меня, в моем ответе ниже http://stackoverflow.com/a/36893699/4099344 – appsyoon