从由UITabBarController控制的视图控制器推送segue

时间:2013-02-04 19:39:06

标签: ios uitabbarcontroller storyboard uitabbar segue

假设第一个视图控制器与UITabBarController连接,我想从第一个视图控制器向第二个视图控制器发出推送。

从我的谷歌搜索,似乎来自与UITabBarController连接的视图控制器的模态segue隐藏了底部标签栏,而push segue则没有。 但是,我的push segue也隐藏了第二个视图控制器中的标签栏。我在第一个视图控制器中覆盖了prepareForSegue方法。

下面是我的故事栏和模拟器的图片。任何人都知道为什么会这样?提前感谢您的帮助。 The bottom right view controller seems to have bottom tab bar in the storyboard but the simulator doesn't show it TT

enter image description here

1 个答案:

答案 0 :(得分:11)

您的麻烦是因为您的tabViewController嵌入在您使用登录屏幕初始化的导航堆栈中。

您需要重新排列内容,以便每个标签栏控制器标签打开到新的导航堆栈。

我的建议

  • 您的登录屏幕应导航到标签栏控制器,其中包含模态/呈现segue,而非push segue。删除包含登录屏幕的navController,你不需要它(好吧,即使你保留它,不要使用push segue,使用模态segue,然后你不会再引用那个navController的viewController堆栈从标签栏内部)。

  • 将tabViewCOntroller中的每个第一个viewControllers嵌入到一个单独的navController中。

现在你可以在tabViewController的标签中推送segue。