Sie müssen die UISearchBarDelegate implementieren:
class ViewController: UIViewController, UISearchBarDelegate {
@IBOutlet weak var searchBar: UISearchBar!
die Suche einstellen Bar Delegaten selbst
override func viewDidLoad() {
super.viewDidLoad()
searchBar.showsCancelButton = true
searchBar.delegate = self
und dann die Funktion butCancelSearchAction Delegierten implementieren zu tun, was Sie die Suchaktion abzubrechen und setzen Sie den Suchtext tun müssen:
func searchBar(searchBar: UISearchBar, textDidChange searchText: String) {
// Do some search stuff
}
func searchBarCancelButtonClicked(searchBar: UISearchBar) {
// Stop doing the search stuff
// and clear the text in the search bar
searchBar.text = ""
// Hide the cancel button
searchBar.showsCancelButton = false
// You could also change the position, frame etc of the searchBar
}
Nein, ich habe das nicht gefragt. Klicken Sie auf Abbrechen Ich möchte meine Suche schließen. Zum Beispiel habe ich eine Suchleiste. Wenn ich darauf klicke, erscheint die Abbrechen-Schaltfläche und die Größe von Bar ändert sich. Recht? Also, bei Abbrechen möchte ich es auf das ursprüngliche Aussehen zurückgeben –
In searchBarCancelButtonClicked können Sie implementieren, was auch immer Sie tun müssen, wenn Abbruch angeklopft wird, die Suchleiste in den Ausgangszustand zurückgesetzt. Ich habe meine Antwort etwas aktualisiert, um dies zu zeigen. – greentor
Um die Abbrechen-Schaltfläche auszublenden, verwenden Sie searchBar.showsCancelButton = false in searchBarCancelButtonClicked. – greentor