iOS 11 UISearchController在键入时消失
iOS 11搜索栏在键入时不断消失我已尝试设置iOS 11 UISearchController在键入时消失,ios,swift,uisearchcontroller,Ios,Swift,Uisearchcontroller,iOS 11搜索栏在键入时不断消失我已尝试设置searchController.hidesNavigationBarDuringPresentation=false以及searchController.definesPresentationContext=true下面是一段视频,介绍了正在发生的事情 我的委托函数 func updateSearchResults(for searchController: UISearchController) { filarr = arr.filter
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
}
您需要在显示您的
searchController
的视图控制器上将definesPresentationContext
设置为true
您正在这样做:
searchController.definesPresentationContext = true
但我们应该这样做:
definesPresentationContext = true
您需要加载项viewDidLoad():
searchController.hidesNavigationBarDuringPresentation = false
您是否在代理方法中添加了任何内容?如果是,请将其添加到您的问题中。我已更新了问题您如何以及在何处分配
UISearchController
?在ViewDidload中,我更新了问题@RobKare您是否实际设置了SearchResultUpdate
和搜索栏。代理
代理?您节省了我的时间!