我有一个像这样为我的 UITableView 类创建的搜索栏,如下所示,
class customTableViewController: UITableViewController, UISearchResultsUpdating
{....
override func viewDidLoad() {
super.viewDidLoad()
self.resultSearchController = ({
let controller = UISearchController(searchResultsController: nil)
controller.searchResultsUpdater = self
controller.dimsBackgroundDuringPresentation = false
controller.searchBar.sizeToFit()
controller.hidesBottomBarWhenPushed = false
controller.hidesNavigationBarDuringPresentation = false
controller.searchBar.searchBarStyle = UISearchBarStyle(rawValue: 2)!
self.tableView.tableHeaderView = controller.searchBar
return controller
})()
self.tableView.reloadData()
}
}
它工作正常,只是当我转到另一个视图控制器时,搜索栏的图像仍然绘制在我的屏幕上,无论我在哪个视图控制器中。当我尝试“searchBar.active = false”时,我得到 nil错误。
我该怎么做才能使这个 searchBar 只绘制在这个 tableViewController 上,而在我的导航中没有其他地方?
万分感谢。