2017-02-13 1 views
0

Comment est-ce que je pourrais ajouter une barre de recherche dans un en-tête uitableview? Spécifiquement j'ai un élément de bouton de barre qui quand il est pressé je voudrais animer dans une barre de recherche dans l'en-tête de vue de table et quand le bouton d'annulation est pressé il animera hors de la vue et l'entête remonte à la normale. Serait-ce possible? Merci.Comment ajouter par programme une barre de recherche à un en-tête UITableView?

Répondre

2

Il est basé sur Swift 2 mais pas très diff rapide 3

Ajouter délégué de recherche pour afficher le contrôleur:

UISearchResultsUpdating 

Effectuer une recherche:

let searchController = UISearchController(searchResultsController: nil) 

Définir ce valeurs par défaut pour searchController:

searchController.searchResultsUpdater = self 
searchController.dimsBackgroundDuringPresentation = false 
definesPresentationContext = true 

recherche Ajouter à la table:

table.tableHeaderView = searchController.searchBar 

Ce délégué vous faire savoir commencer à chercher:

func updateSearchResultsForSearchController(searchController: UISearchController) { 
    filterContentForSearchText(searchController.searchBar.text!) 
} 

impliment votre fonction de recherche:

func filterContentForSearchText(searchText: String, scope: String = "All") { 
    // do some stuff 
}