Мы создаем приложение с локальной базой данных. На главном экране есть UISearchBar
, и когда пользователь его выбирает, он может начать набирать и искать содержимое нашей базы данных (как IMDB или многие другие приложения).iOS: Как использовать UISearchDisplayController для поиска вместо фильтра
Наша проблема заключается в том, что мы выбрали UISearchDisplayController
управлять переходом от UISearchBar
(живой бар, идущий к верхней части экрана, яркость нижележащих UIView
и т.д ....).
Теперь этот контроллер отлично работает, чтобы фильтровать содержимое списка в памяти. Мы следовали за this учебным пособием, и все прошло отлично.
Но это заставляет нас запускать поиск по основной теме. Если запустить поиск в фоновом потоке, т.е. внутри этого метода:
-(void)filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope {
все короткие аварий возникают, так как -перезагрузка UITableView
происходит перед/во время поиска работает.
Любая помощь в любом из этих вариантов можно только приветствовать:
1) управления, когда UISearchDisplayController
вызывает методы перезагрузки данных.
2) Простой способ моделирования поведения этих контроллеров относительно переходов.
Заранее спасибо
Не могли бы вы показать соответствующий код? – Jasper
Нужно ли вам поддерживать iOS 7? Если нет, вы можете использовать новый 'UISearchController', который заменяет' UISearchDisplayController'. –
К сожалению, мне нужно поддерживать iOS 7 – gonso