我正在尝试在桌面滚动时将搜索栏保留在视图中。目前我将它作为标题放在一个tableview中,它可以正常工作,当然,当你走下桌子时,搜索栏会滚动离开屏幕。我以为我可以简单地修改这个代码示例:
searchController = UISearchController(searchResultsController: nil)
searchController.searchResultsUpdater = self
searchController.delegate = self
searchController.searchBar.delegate = self
searchController.dimsBackgroundDuringPresentation = false
searchController.hidesNavigationBarDuringPresentation = false
tableview.tableHeaderView = searchContoller.searchBar // How to put it elsewhere?
//Alternative that also works
navigationItem.titleView = searchController.searchBar
想法是采取其他观点并做
otherview = searchController.searchBar
例如UISearchBar的出口,或空白的UIView,或类似的东西。
但如果我这样做,它就不会显示searchBar。它似乎只能用作表的标题视图或navigationItem.titleView。
我错过了什么吗?
答案 0 :(得分:25)
如果您有一个位于tableview上方的空白UIView。
让我们假设您有一个名为searchContainer
的空白UIView的出口。
然后,您可以通过添加以下行
UISearchController
的搜索栏添加到该视图
searchContainer.addSubview(searchController.searchBar)