在我的应用程序中,我需要创建一个搜索建议界面 - 与Google搜索非常相似(它在搜索字段中键入时开始显示建议)。有没有办法与UISearchController创建“搜索建议”界面
我在导航栏的搜索栏中UISearchController
做到了,设置它是这样的:
// setup search controller
searchController = UISearchController(searchResultsController: searchSuggestionsController)
self.searchController.searchResultsUpdater = searchSuggestionsController
self.searchController.hidesNavigationBarDuringPresentation = false
self.navigationItem.titleView = self.searchController.searchBar
// ISSUE!! definesPresentationContext needs to be false or I can't push this
// controller multiple times on the navigation stack
self.definesPresentationContext = true
而当搜索控制器推到导航堆栈中第一次工作得很好,它不“T让搜索栏获取焦点当推第二次,如下图所示
,但如果我将它设置为false:当我开始输入到搜索栏,导航酒吧(连同搜索栏)消失。这是意料之中的,因为(因为definesPresentationContext = false
)UISearchController
行为现在正试图以显示其对UINavigationController
的视图的俯视图,如下图所示:
有没有办法通过UISearchController实现这一目标?如果没有,我应该如何为此创建一个自定义控件的指针? (动画中显示的最小应用的代码可以是downloaded here)