gpt4 book ai didi

swift - 使用多个搜索栏和交互式弹出手势时导航项 View 消失

转载 作者:行者123 更新时间:2023-11-30 10:42:42 25 4
gpt4 key购买 nike

我使用多个 UISearchBar 作为嵌入 UITabBarController 中的 UINavigationController 中的 titleView。当我使用后退按钮按下和弹出 View Controller 时,这一切都工作得很好。但是,当我使用交互式弹出手势弹出时,搜索栏开始消失。

我不知道如何解决这个问题。

我尝试在 viewWillAppearviewDidAppear 中设置 navigationItemtitleView,但两者都没有工作。

搜索栏接受输入并触摸,只是不可见。

这是viewWillAppear代码:

override func viewWillAppear(_ animated: Bool) {
print("view will appear from base search")
super.viewWillAppear(animated)
print(self.searchController.searchBar)
self.definesPresentationContext = true
self.navigationItem.titleView = nil
self.navigationItem.titleView = self.searchController.searchBar
self.navigationController?.setNavigationBarHidden(false, animated: true)
}

以下是发生的情况的一些照片:

https://imgur.com/a/OQ7kb1q

第一张照片是主页。

第二张照片是用户输入搜索查询的照片。

第三张照片是用户执行交互式弹出手势后返回时的照片。

第四张照片显示您仍然可以在搜索栏中输入内容,即使它不可见。

第五张照片显示您仍然可以点击搜索栏旁边的取消按钮,即使该按钮不可见。

最佳答案

我通过设置解决了这个问题:self.navigationItem.searchController = searchController

而不是设置:

self.navigationItem.titleView = searchController.searchBar

关于swift - 使用多个搜索栏和交互式弹出手势时导航项 View 消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56451903/

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