iOS8 Swift UISearchController hides navigationbar

2019-04-29 02:59发布

I implemented a search function for an UITableViewController like this:

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

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

The problem I've been experiencing is that if I click on it, my navigation bar and my navigationcontrollers header disappear. Is there a solution to stop this behaviour (in swift)?

Not clicked:

Not clicked

Clicked:

Clicked

1条回答
Bombasti
2楼-- · 2019-04-29 03:23

The UISearchController has a property called hidesNavigationBarDuringPresentation, maybe that can help you.

EDIT: Just tried it myself and it works, just add this line:

searchController.hidesNavigationBarDuringPresentation = false
查看更多
登录 后发表回答