假设我在同一导航控制器中有2个VC。在第一个VC(tableViewController)中,有一个以编程方式定义的搜索栏,当单击一排tableVC时,它将显示(选择)第二个VC(也为tableVC)。
现在的问题是,当searchBar在第一个VC中处于活动状态时,例如输入一些单词,然后显示第二个VC,searchBar也将出现在第二个VC中。我想在第二个VC中隐藏searchBar。由于searchBar是在第一个VC中定义的,我该怎么办?任何提示表示赞赏。
///更新:尝试在第一个VC的viewDidDisappear()中隐藏searchBar,但是导航栏消失了,这不是预期的行为。
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
// hide searchBar
self.resultSearchController.searchBar.isHidden = true
}
/ / / /嗯,这段代码可以删除第二个VC中的searchBar,但是有一个删除的动画,即使我设置了super.viewWillDisappear(false)
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(false)
// hide searchBar
resultSearchController.isActive = false
}