我正在使用UISearchController
(不是UISearchDisplayController
),我希望在搜索处于活动状态时显示单独的视图。我不想使用当前视图。
尝试self.searchController = UISearchController(searchResultsController: self.resultsController )
。但这并没有显示任何内容。
甚至试过这个
func presentSearchController(_ searchController: UISearchController) {
DispatchQueue.main.async {
searchController.searchResultsController?.view.isHidden = false
}
}
func didPresentSearchController(_ searchController: UISearchController) {
searchController.searchResultsController?.view.isHidden = false
}
我在搜索激活之前的默认表格数据如下所示,我希望此表格隐藏并显示单独的视图,并将键入的关键字传递给该新视图。我怎样才能做到这一点?
答案 0 :(得分:1)
由于viewController没有直接的segue,我们需要显式引用我们想要使用的viewController。
我使用了以下代码,当我的searchBar处于活动状态时,它会加载我的新控制器。
let storyboard = UIStoryboard(name: "Main", bundle: nil)
self.resultsController = storyboard.instantiateViewController(withIdentifier: "searchResults") as! SearchResultsTableViewController
self.searchController = UISearchController(searchResultsController: self.resultsController )
如果有更好的方法可以告诉我。