Der UISearchDisplayController ist sehr praktisch und die Implementierung der Suche ist ziemlich einfach.
Ich stoße jedoch auf ein Problem, wenn ich in meiner App das Suchergebnis mit einer leeren Suchzeichenfolge, aber mit ausgewählter Bereichsschaltfläche anzeigen möchte.
Es scheint so, als ob ein Suchstring eingegeben werden muss, damit die Suchergebnis-Tabelle initialisiert und angezeigt wird.
Gibt es Möglichkeiten, das Suchergebnis sofort anzuzeigen, nachdem der Benutzer einen Bereich ausgewählt, aber noch keinen Suchbegriff eingegeben hat?
Danke Rechnung
Wenn Sie auf eine neue Bereichsschaltfläche tippen, wird der selectedScopeButtonIndex ausgelöst:
%Vor%Sie können den Titel Ihrer Suche hier aufnehmen mit:
%Vor%Funktioniert nicht mit dem anfänglichen Bereichsindex, aber Sie können Ihre Suche zunächst basierend auf dem zuletzt verwendeten selectedScopeButtonIndex
auslösen Ich habe nach dem gleichen gesucht und gerade etwas in den Apple Entwicklerforen gefunden: Die UISearchDisplayController
ist so implementiert, dass die Ergebnistabelle erst angezeigt wird, wenn ein Text eingegeben wird. Es gibt auch einen Fehlerbericht: ID # 8839635.
Ich habe daran gearbeitet, indem ich ein segmentiertes Steuerelement unterhalb der Suchleiste platziert habe, um die Bereichsleiste zu imitieren.
Hier ist eine Problemumgehung, die die Bereichsschaltflächen verwendet. Die Hauptsache ist das Hinzufügen eines zusätzlichen Zeichens für die Bereiche, für die Sie die Suchergebnisse automatisch anzeigen möchten. Stellen Sie jedoch sicher, dass Sie sie für die Bereiche entfernen, die Sie nicht verwenden möchten.
Sie müssen searchBar:textDidChange
sowie searchBar:selectedScopeButtonIndexDidChange:
Tags und Links iphone uisearchdisplaycontroller