【问题标题】:How to keep NavigationController when performSegue from embeded tableviewcontroller从嵌入式 tableviewcontroller 执行Segue 时如何保留 NavigationController
【发布时间】:2018-12-05 10:00:00
【问题描述】:

在左下角的视图控制器中,我在顶部有一个搜索栏,它调用顶部的 tableview,问题是我想用它的详细信息转到正确的视图控制器,但是我当然失去了我的 navigationController 所以当我进入正确的视图控制器时,我不能再回去了,我应该怎么做才能回到我原来的视图控制器?

【问题讨论】:

  • 问题是你正在做一个segue。相反,您应该推送新的 ViewController,以便它进入 NavigationController 的堆栈中。如果您将“呈现”作为您的转场,您将始终具有这种效果

标签: ios swift xcode uisearchbar uistoryboard


【解决方案1】:

添加导航控制器作为情节提要中的起始视图。然后将 RootViewController 链接到它。这将确保接下来所有视图中的导航栏。

您可以在不需要的视图中隐藏导航栏

self.navigationController?.isNavigationBarHidden = true

推送 newViewController 而不是展示

另外,请检查您是否以模态方式呈现它。模态转场占据了整个屏幕,因此呈现控制器中的任何导航栏、工具栏或标签栏都将被覆盖。如果您想在此模态控制器上添加一个导航栏,则需要专门为其添加一个导航栏,并将您想要的任何按钮添加到该新导航栏(或工具栏)。如果您不想这样做,请不要以模态方式呈现它,而是推送它。

【讨论】:

  • 对不起,已经有一个viewcontroller,问题是顶部的view只是在这里显示我在root viewcontroller的搜索栏需要的tableView,你看不到它但是我'我使用一个大标题和添加到它的搜索栏,问题是因为我的 tableview 是一种嵌入并且与其余部分断开连接,所以我在执行我的 segue 时没有导航
  • 能否请您显示故事板开头的屏幕截图?你的意思是来自视图控制器的导航控制器(已经是视图控制器)。其他视图中是否已有导航栏?
  • 另外请检查 --> 你的 segue 必须连接到 SecondViewController 的 NavigationController。已经这样了吗?
  • 哪个segue必须连接到哪个navigationController?
  • segue 必须连接到缺少 navigationBar 的 NavigationController。加载相应视图的 Segue
猜你喜欢
  • 2015-11-18
  • 1970-01-01
  • 2018-07-27
  • 2016-06-04
  • 1970-01-01
  • 2011-06-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多