Bar*_*zyk 10 xcode ios swift uisearchcontroller
在我的代码中,这是我设置的方式UISearchController:
searchResultController = storyboard!.instantiateViewControllerWithIdentifier(DBSearchResultControllerIdentifier) as! DBSearchResultController
searchController = UISearchController(searchResultsController: searchResultController)
searchController.searchResultsUpdater = self
searchController.delegate = self
searchResultController.tableView.tableHeaderView = searchController.searchBar
Run Code Online (Sandbox Code Playgroud)
我采取的一些行动是:
@IBAction func cityButtonTapped(sender: UIButton) {
searchController.active = true
}
Run Code Online (Sandbox Code Playgroud)
但后来我有一个错误:
应用程序试图在自身上呈现模态视图控制器.提出控制器是
UISearchController: 0x7f9a0c04a6a0
小智 20
苹果文档UISearchController明确说明了以下内容:
active属性设置为YES会执行搜索控制器的默认显示.searchResultsController参数设置为nil在您要搜索的同一视图中显示搜索结果.因此,看起来您正在使用当前的视图控制器本身searchResultsController,因此当您尝试设置active为YES时,它会尝试以模态方式呈现您当前的视图,从而显示错误.