显示额外的视图控制器而不删除标签栏

时间:2015-07-08 14:07:25

标签: ios uitabbarcontroller

我的应用有一个菜单和一个UITabBarController。我想要做的是显示属于我的菜单但不属于UITabBarController的视图控制器,但我不想删除UITabBarController。我尝试过类似下面的代码,但他们正在移除UITabBarController

tabBarViewController.selectedViewController?.presentViewController(ExtraViewController, animated: true, completion: nil)

2 个答案:

答案 0 :(得分:2)

您应该获得所选UINavigationController的{​​{1}},然后按下您要显示的视图。否则,您将使用ViewController隐藏presentViewController视图来呈现模态视图控制器。 我现在不在我的电脑上,也无法发布任何代码,但希望这会有所帮助。

答案 1 :(得分:1)

最好的方法是使用UINavigationController。您可以以编程方式创建新的菜单控制器并将菜单控制器设置为root。

如果您将此UINavigationController作为UITabBarController中的一个视图,那么您可以执行以下代码:

[self.navigationController pushViewController:ExtraViewController animated:NO];

您还可以使用故事板创建控制器层次结构:

enter image description here

为此,请选择您的菜单控制器,然后转到Xcode menu>Editor>Embed in>Navigation Controller,然后转到Xcode menu>Editor>Embed in>Tab Bar Controller