configurer un contrôleur de recherche dans un contrôleur de vue:barre de recherche réutilisée ViewController ne répond pas après Segue
searchController = UISearchController(searchResultsController: nil)
searchController.searchResultsUpdater = self
searchController.dimsBackgroundDuringPresentation = false
searchController.searchBar.placeholder = getLocalizedString("searchByName")
searchController.searchBar.setValue(getLocalizedString("cancel"), forKey:"_cancelButtonText")
searchController.searchBar.delegate = self
searchController.hidesNavigationBarDuringPresentation = false
searchController.searchBar.showsCancelButton = true
searchController.searchBar.sizeToFit()
Puis, quand un bouton de recherche dans la barre de navigation est cliqué, je vous présente la barre de recherche dans la barre de navigation de TitreView:
self.navigationItem.setHidesBackButton(true, animated: true)
self.navigationItem.rightBarButtonItem = nil
self.navigationItem.leftBarButtonItem = nil
self.navigationItem.titleView = searchController.searchBar
searchController.searchBar.becomeFirstResponder()
Lorsque j'utilise ce contrôleur de vue en tant qu'élément de la barre d'onglets, la barre de recherche fonctionne comme prévu.
Je réutilise également le contrôleur de vue avec un segue d'un autre contrôleur de vue qui a également un contrôleur de recherche. Une fois le segue effectué, et je clique sur le bouton de recherche, la barre de recherche est présentée mais ne répond pas aux clics ou à quoi que ce soit.
Mise à jour
Je viens de comprendre c'est parce que je suis en utilisant:
self.definesPresentationContext = true
Toute idée pourquoi? J'en ai besoin parce que sinon l'écran est noirci si je me déplace entre les onglets.
Merci.