键入时 iOS 11 搜索栏一直消失我曾尝试设置 searchController.hidesNavigationBarDuringPresentation = false 还有这里的 searchController.definesPresentationContext = true 是正在发生的事情的视频

Video

我的委托(delegate)功能

func updateSearchResults(for searchController: UISearchController) {
    filarr = arr.filter({ (arr:String) -> Bool in
        if arr.contains(searchController.searchBar.text!){
            return true
        }else{
            return false
        }

    })
    resultController.tableView.reloadData()
}

//Assigning the searchbarcontroller
if #available(iOS 11.0, *) {
        self.navigationController?.navigationBar.prefersLargeTitles = true
        self.navigationItem.searchController = searchController
        self.navigationItem.hidesSearchBarWhenScrolling = false
    } else {
        tableView.tableHeaderView = searchController.searchBar
    }

最佳答案

您需要在呈现您的 definesPresentationContext 的 View Controller 上将 true 设置为 searchController

你正在这样做:

searchController.definesPresentationContext = true

但应该这样做:
definesPresentationContext = true

关于键入时 iOS 11 UISearchController 消失,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47888182/

10-12 07:16