2015-02-25 21 views
6

ho implementato una funzione di ricerca per un UITableViewController come questo:iOS 8 Swift UISearchController nasconde navigationbar

self.resultSearchController = ({ 
     let controller = UISearchController(searchResultsController: nil) 
     controller.searchResultsUpdater = self 
     controller.dimsBackgroundDuringPresentation = false 
     controller.searchBar.sizeToFit() 

     self.tableView.tableHeaderView = controller.searchBar 
     return controller 
    })() 

Il problema che ho sperimentato è che se clicco su di essa, la mia barra di navigazione e le mie navigationcontrollers intestazione scomparire. C'è una soluzione per fermare questo comportamento (in rapido)?

Non cliccato:

Not clicked

cliccato:

Clicked

risposta

12

L'UISearchController ha una proprietà chiamata hidesNavigationBarDuringPresentation, forse questo può aiutare.

EDIT: appena provato io stesso e funziona, è sufficiente aggiungere questa linea:

searchController.hidesNavigationBarDuringPresentation = false 
+0

E se solo un UISearchBar viene usato al posto di UISearchController? –

Problemi correlati