首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用多个搜索栏和交互式pop手势时导航项视图消失

使用多个搜索栏和交互式pop手势时导航项视图消失
EN

Stack Overflow用户
提问于 2019-06-04 22:03:01
回答 1查看 54关注 0票数 0

我正在使用多个UISearchBar作为嵌入在UITabBarController中的UINavigationController中的titleView。当我使用后退按钮按下和弹出视图控制器时,这一切都很好。但是,当我使用交互式pop手势弹出时,搜索栏就开始消失。

我不知道怎么解决这个问题。

我尝试过在titleViewviewDidAppear中设置navigationItemviewWillAppear,但两者都没有工作。

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

以下是viewWillAppear代码:

代码语言:javascript
复制
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

第一张照片是首页。

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

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

第四张照片显示,即使搜索栏不可见,仍然可以键入。

第五张照片显示,您仍然可以点击搜索栏旁边的“取消”按钮,尽管这是不可见的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-04 22:42:36

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

而不是设置:

self.navigationItem.titleView = searchController.searchBar

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56451903

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档