Ich habe eine UISearchBar
als Unteransicht zu einem UICollectionView
hinzugefügt und an eine UISearchDisplayController
angeschlossen.UISearchBar in einer UICollectionView verschwindet mit UISearchDisplayController
ich es in viewDidLoad
einzurichten:
self.searchController = [[UISearchDisplayController alloc] initWithSearchBar:self.searchBar
contentsController:self];
self.searchController.delegate = self;
self.searchController.searchResultsDataSource = self;
self.searchController.searchResultsDelegate = self;
[self.collectionView addSubview:self.searchBar];
Wenn ich eine andere Ansicht-Controller an die Navigationssteuerung drücken Sie es dann Pop, verschwindet die Suchleiste. Dies ist nur der Fall, wenn in der Sammlungsansicht so weit gescrollt wird, dass die Suchleiste ausgeblendet wird. Auch wenn die Suchleiste nicht mehr angezeigt wird, wird durch Antippen des weißen Bereichs, in dem sie angezeigt werden soll, der Suchanzeigesteuerelement aktiviert.
Dies geschieht nur auf iOS 7, und wenn ich den Search Display Controller entferne, wird die Suchleiste nicht verschwinden.
Noch eine erwähnenswerte Sache. Wenn die Suchleiste verschwunden ist, wenn ich einen anderen View-Controller drücke und dann die Taste drücke, wird die Leiste wieder sichtbar.
Offenbar ist dies ein Fehler von UISearchDisplayController
auf iOS 7, also irgendwelche Ideen, wie man es umgehen kann?
Sie eine Lösung gefunden? Ich stoße auf das gleiche Problem. Dem Kopf der Auflistungsansicht wurde eine UISearchDisplayController.uisearchbar hinzugefügt. Wenn der Benutzer zu einer anderen Ansicht wechselt und zurückkehrt. Die Uisearchbar wird verschwinden. Es könnte jedoch immer noch aktiv sein, wenn der Benutzer auf den leeren Bereich klickt. –
Ich konnte kein Workout finden, daher schrieb ich "UISearchDisplayController" auf eigene Faust neu. –
Sie meinen, Sie animieren das aktive auf uisearchbar und fügen Sie das uitableview selbst hinzu? Eigentlich brauche ich nur die "aktive" Animation. Nicht sicher, ob es einen einfachen Weg gibt, einen ähnlichen Effekt zu erzeugen. –