iOS 11 UISearchController在输入时消失

Sag*_*dul 3 ios swift uisearchcontroller

iOS 11搜索栏在输入时一直在消失我试图设置searchController.hidesNavigationBarDuringPresentation = false也是searchController.definesPresentationContext = true这里是一个正在发生的事情的视频

视频

我的代表职能

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
    }
Run Code Online (Sandbox Code Playgroud)

Au *_*Ris 6

您需要设置definesPresentationContexttrue呈现你的视图控制器上searchController.

你这样做:

searchController.definesPresentationContext = true
Run Code Online (Sandbox Code Playgroud)

但应该这样做:

definesPresentationContext = true
Run Code Online (Sandbox Code Playgroud)