My UITableViewController
正在符合新的UISearchControllerDelegate
并且UISearchResultsUpdating
.
这是我的搜索栏设置代码:
override func viewDidLoad() {
var searchController = UISearchController(searchResultsController: self)
searchController.searchResultsUpdater = self
self.tableView.tableHeaderView = searchController.searchBar
self.definesPresentationContext = true
}
但是,当在模拟器中运行它时,表标题中没有搜索栏,即使在代码中指定了搜索栏。我也尝试过这段代码viewWillAppear
,但同样没有显示搜索栏。
一位苹果工程师告诉我,你必须给搜索栏一个框架。如果打印搜索栏的框架,您会发现它的高度为零。所以这可能是苹果代码中的一个错误。
searchController.searchBar = CGRectMake(0.0, 0.0, 320.0, 44.0)
Edit:
文档指定您必须传入要显示结果的视图控制器。要在您所在的同一视图控制器中显示此内容,请传入 nil。
var searchController = UISearchController(searchResultsController: nil)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)