До iOS 13, когда панель поиска стала первым респондентом, приведенный ниже код отображал панель области действия с двумя кнопками панели области действия, что является предполагаемым поведением.
В iOS 13 панель поиска по-прежнему функционирует правильно, однако область видимости больше не отображается. Документация Apple для UISearchBarDelegate, кажется, предлагает использовать .setShowsScope (show: (bool), animated: (bool)) и .sizeToFit () для iOS 13. Однако эти вызовы функций, похоже, не имели никакого эффекта. Ищете идеи для отображения панели области, как это было в iOS 12 и более ранних версиях.
func searchBarTextDidBeginEditing(_ searchBar: UISearchBar) {
//eventSearchBar is name of UISearchBar
//eventSearchBar.delegate has already been called out as self
//eventSearchBar is not owned by a UISearchController
self.navigationController?.setNavigationBarHidden(true, animated: true)
eventSearchBar.setShowsCancelButton(true, animated: true)
eventSearchBar.frame.size.height = 68
TitleView.frame.size.height = 132
eventSearchBar.scopeButtonTitles = ["Category", "Project"]
eventSearchBar.showsScopeBar = true
if eventSearchBar.text! == "" {
self.tableView.reloadData()
} else {
if eventSearchBar.selectedScopeButtonIndex == 0 {
self.loadSearchElements(self.refreshControl)
} else {
self.loadProjectSearchElements(self.refreshControl)
}
}
}