小斯威夫特问题

在使用UISearchController的导航栏中实现UISearchBar时,您需要进行以下设置:

navigationItem.searchController = searchController

当搜索栏为空时,您可能无法显示结果表视图(例如,您可能希望显示最近的搜索)

您尝试了一切,包括:

self.searchController?.searchResultsController?.view.isHidden = false

在UISearchControllerDelegate和UISearchBarDelegate方法中:

willPresentSearchController,didPresentSearchController和textDidChange,searchBarTextDidBeginEditing。

但是仍然无法正常工作!

解:

viewDidAppear中设置searchController.isActive = true

注意:但是,如果要通过以下设置将搜索栏放置在导航项的标题视图中:

navigationItem.titleView = searchController.searchBar

你可以设定

viewWillAppear中的 searchController.isActive = true