的UISearchBar停留在NavigationController按后退按钮
问题描述:
后,我有连接到UINavigationController
一个UISearchBar
,当我点击了提交UIViewController
其中包含UISearchBar
它并不如我所料消失的后退按钮,它会保持仍然附着在导航栏并出现在父视图控制器上。的UISearchBar停留在NavigationController按后退按钮
这里是我的UISearchBar
声明:
lazy var searchBar: UISearchBar = {
let sb = UISearchBar()
sb.placeholder = "Search"
UITextField.appearance(whenContainedInInstancesOf: [UISearchBar.self]).backgroundColor = UIColor.rgb(red: 230, green: 230, blue: 230) // cor de fundo da search bar
sb.delegate = self
return sb
}()
以下是我附上UISearchBar
到UINavigationController
navigationController?.navigationBar.addSubview(searchBar)
我试着TI呼吁viewWillDisappear
searchBar.removeFromSuperview()
,但它并没有奏效。
任何提示?
谢谢
答
使用self.navigationItem.titleView = searchBar
添加的,而不是navigationController?.navigationBar.addSubview(searchBar)
搜索栏,当你需要删除它,然后由另一UIView
更换titleview的或使其=零
添加
self.navigationItem.titleView = searchBar
删除
self.navigationItem.titleView = UIView()
尝试用'self.navigationItem.titleView = searchBar'添加和删除用于'self.navigationItem.titleView = nil' –
它的工作,但不知何故,当我推NAV-C再我的搜索栏的背景颜色消失,但我认为这是一个不同的问题。谢谢 –