iOS8 Swift UISearchController 隐藏导航栏

iOS8 Swift UISearchController hides navigationbar

我像这样实现了 UITableViewController 的搜索功能:

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

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

我一直遇到的问题是,如果我单击它,我的导航栏和导航控制器 header 就会消失。 是否有阻止此行为的解决方案(在 swift 中)?

未点击:

点击次数:

UISearchController 有一个 属性 叫做 hidesNavigationBarDuringPresentation,也许它可以帮助你。

编辑:我自己试过了,它起作用了,只需添加这一行:

searchController.hidesNavigationBarDuringPresentation = false