gpt4 book ai didi

ios - 按下后退按钮后,UISearchBar 停留在 NavigationController 上

转载 作者:行者123 更新时间:2023-11-29 11:42:08 24 4
gpt4 key购买 nike

我有一个 UISearchBar 附加到 UINavigationController,当我点击包含 UISearchBar 的 UIViewController 的后退按钮时 它并没有像我预期的那样消失,它仍然附着在导航栏上并出现在父 View Controller 上。

这是我的 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)

我尝试在 viewWillDisappear 上调用 searchBar.removeFromSuperview() 但没有成功。

有什么提示吗?

谢谢

最佳答案

使用 self.navigationItem.titleView = searchBar 代替 navigationController?.navigationBar.addSubview(searchBar) 添加搜索栏,当您需要删除它时再替换titleView 由另一个 UIView 或让它 = nil

添加

self.navigationItem.titleView = searchBar

删除

self.navigationItem.titleView = UIView()

关于ios - 按下后退按钮后,UISearchBar 停留在 NavigationController 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45892076/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com