从一个 UITabBarController 导航到另一个 UITabBarController

Posted

技术标签:

【中文标题】从一个 UITabBarController 导航到另一个 UITabBarController【英文标题】:Navigate from a UITabBarController to another UITabBarController 【发布时间】:2014-11-17 07:24:34 【问题描述】:

我有 UITabBarController,它有 1 2 3 和 4 个场景。在场景 2 上,我有我单击的视图,它应该导航到另一个带有另一个 A、B、C 和 D 场景的 UITabBarController。

问题是推送不起作用。我从场景 2 中调用我的第二个 UITabBarController。

CompanyDetailsTabBarViewController *controller = [self.storyboard     instantiateViewControllerWithIdentifier:company_details_tab_bar_controller];
NSLog(@"1 2 3 %@ %@ %@ %@", controller, self.parentViewController, self.parentViewController.parentViewController, self);

[self.navigationController pushViewController:controller animated:YES];

我什至尝试过

[self.parentViewController.navigationController pushViewController:controller animated:YES];

但这也不起作用。

【问题讨论】:

你有 2 个 tabbarController 或一个有 4 个标签的 TabbarController 吗? @Vineesh 我有 2 个 UITabBarControllers,每个都有四个选项卡。 我正在使用标签栏控制器来显示四种不同类型的信息。在第二个选项卡上,当我单击该信息时,我必须转到另一个 UITabController。然后,此特定信息本身被归类为四个不同的子单元,即选项卡。 你为什么使用 2 个 TabbarControllers? 【参考方案1】:

现在标签栏控制器应该是这样工作的。它们旨在成为您的应用程序的根视图控制器,而不是被设计为推送到导航堆栈上。

在创建标签栏界面之前,您需要确定您打算如何使用标签栏界面。因为它对您的数据强加了一个总体组织,所以您应该仅以以下特定方式使用它:

直接安装为窗口的根视图控制器。

将其安装为拆分视图界面中的两个视图控制器之一。 (仅限 iPad)

从另一个视图控制器模态显示它。

从弹出窗口显示它。 (仅限 iPad)

来自here。

听起来模态呈现是最适合您的解决方案。

【讨论】:

以上是关于从一个 UITabBarController 导航到另一个 UITabBarController的主要内容,如果未能解决你的问题,请参考以下文章

将导航从 UITabbarController 推送到 UIViewController

如何从 UITabBarController 页面导航到具有 PUSH 样式的另一个视图控制器

导航到 UITabBarController 上的某个选项卡

从UITabBarController内部呈现UINavigationController

UITabBarController 隐藏更多导航栏

如何识别从UITabBarController中的更多选项卡或单独选项卡单击视图控制器?