Ich verwende UISearchController in iOS 8 mit dem folgenden intializaiton in viewDidLoad eines View-Controller in einem Tab-Controller eingebettetUISearchController macht den Controller schwarz
_searchController = [[UISearchController alloc] initWithSearchResultsController:nil];
_searchBar = _searchController.searchBar;
[_searchController.searchBar sizeToFit];
_searchController.searchBar.delegate = self;
_searchController.searchResultsUpdater = self;
_searchController.dimsBackgroundDuringPresentation = NO;
_searchController.hidesNavigationBarDuringPresentation = NO;
self.definesPresentationContext = NO;
_shopsTable.tableHeaderView = _searchController.searchBar;
I
- (void) updateSearchResultsForSearchController:(UISearchController *)searchController
und (void)filterContentForSearchText:(NSString *)searchText
und die Suche funktioniert, wird die Tabellenansicht ordnungsgemäß aktualisiert usw.
Aber!
Wenn ich die Registerkarten wechsle, während der Suchcontroller aktiv ist (indem ich einfach auf die Suchleiste oder mit etwas Text tippe) auf eine andere Registerkarte und dann zurück auf die Suchregisterkarte, bekomme ich einen leeren Bildschirm mit nur der Suchleiste diese
In diesem Fall suche ich für Dinge, die mit lar
beginnen, die Ergebnisse haben zurückzukehren und angezeigt sie correcly. Aber wenn ich die Tabs wechsle und auf die Suchregisterkarte zurückkehre, bekomme ich einen leeren Bildschirm wie diesen. Die einzige Möglichkeit, wie der Controller in seinen ursprünglichen Zustand zurückkehrt, ist, wenn ich _searchController.active = NO
mache. Aber wenn der Benutzer diese Suche aktiv halten möchte, kann ich sie nicht einfach deaktivieren.
Ich bin sicher, ich bin etwas fehlt, aber da gibt es nicht viel in UISeachController zu tun ist, ich kann nicht herausfinden, was ist der Grund dafür ..
können Sie bitte Beispielcode C-Code zur Verfügung stellen, bin ich mit demselben Problem fest? Ich bin sehr neu in der IOS-Entwicklung. Ich habe separate View-Controller für die Suche sowie die Hauptliste. Das ist das Problem. – Amith