2

我在标签栏中有 3 个视图控制器。(我的 3 图标)。我有另一个视图控制器,可以通过按钮从 3 个中的一个访问。我不希望这个额外的视图控制器显示在标签栏上。

单击带有 push segue 的按钮时,没有任何反应,使用模式 segue 它会打开新页面,但标签栏会消失。(即使我创建了从这个新视图控制器到标签栏的关系)。

如何让标签栏保留?我真的不想在我的一个视图和另一个视图之间(不在标签栏上)设置导航控制器,因为它不是真正的分层内容。

modal 真的是正确的使用方式吗?

4

2 回答 2

2

您的视图(3 个视图控制器的视图)是否包含标签栏?如果没有,您可以尝试从视图转换到额外视图控制器的视图。

+[UIView transitionFromView:toView:duration:options:completion:]

于 2012-08-17T04:02:52.243 回答
1

当您选择 Modal segue 时,新视图不会添加为当前 TabController 堆栈的一部分。这就是为什么当您转到此视图时选项卡栏不可见,这就是为什么 Push segue 对您不起作用(您不能推送不属于堆栈的 VC)。

从它的声音来看,如果您希望标签栏保持可见/有用但不想将此 VC 添加到标签栏,那么您真正要说的是此 VC 是其中一个的子视图标签栏中的原始3个VC。

在这种情况下,您可以从这些原始 VC 之一中管理“自定义”VC 的实例化,并将其添加为子视图?

例如,如果你有:Tab1, Tab2, Tab3ExtraView

Tab2 VC您将 init/allocSubView并执行以下操作:[self addSubView:ExtraView.view];

不幸的是,这样你当然会失去 Segues,但除非你想继续Tab2在 Storyboard 中设置为嵌套 NavigationController,否则我认为这是你最好的选择。

于 2012-09-01T23:01:22.473 回答