我正在尝试在导航栏中添加带有范围栏的搜索栏。
searchController = UISearchController(searchResultsController: nil)
let searchBar = searchController.searchBar
searchBar.scopeButtonTitles = ["Clients", "Vendors"]
searchBar.showScopeBar = true
navigationItem.searchController = searchController
这最初在搜索时有效,但在关闭搜索控制器后,导航栏返回较小的尺寸,从而隐藏了范围栏。
根据“捕获视图层次结构”工具,缩小的是实际的UISearchBar,所以我尝试了一些技巧来增加它:
didDismissSearchController
和:
sizeToFit()
和navigationController?.navigationBar
heightAnchor
设置为常量setNeedsLayout()
和layoutIfNeeded()
我还尝试将搜索栏添加到表格视图的标题中,但这存在相同的问题:在取消搜索后,搜索栏会缩小。所以不是因为它在导航栏中,而是因为范围栏。