5

我的应用程序中有以下设置:我的初始视图控制器是 UITabBarController。标签:

1)UINavigationController->PostListVC
2)UINavigationController->CategoriesListVC
3)UINavigationController->PostListVC
4)UINavigationController->PostListVC
5)UINavigationController- >MoreViewController

如您所见,3 个选项卡包含相同的 viewController 类,但不应包含相同的视图控制器对象 - 视图将根据他从 AppDelegate 获得的信息显示不同的信息。

我所做的是我创建了 5 个 UINavigationController,将它们连接到 uitabbarcontroller,然后为其中的 3 个创建了一个 rootViewController segue 到同一个 PostListVC 视图——这样我就不需要维护同一个视图的 3 个设计。

我得到的问题是只有第一个 PostListVC 被正确创建(选项卡栏中最左边的) - 指向 PostListVC 的其他选项卡只显示黑屏。

我试图用一个 3-tab 示例来说明我连接故事板的方式: 在此处输入图像描述
如您所见,最上面和最下面的视图都连接到 PostListVC。

我不知道问题是什么。我假设我使用情节提要有些错误。

有人知道我该如何解决这个问题吗?

谢谢!

编辑: 我创建了一个简单的示例项目(Xcode 5)来说明这个问题:

http://www.speedyshare.com/Srwfg/TabBarProblem.zip

编辑 2: 示例的修改版本,显示所提供解决方案的问题:http: //speedy.sh/JkdGC/TabBarProblem-2.zip

无法使用此方法创建不同的 tabBarItems,也无法放置 barItems 以使它们不在一行中 - 即使您尝试更改 segues 的顺序。

4

2 回答 2

0

我已经让您的示例程序可以工作,但我不知道该解决方案是否适用于您的整个项目。希望它能让你走上正确的轨道。

解决方案是拥有一 (1) 个导航控制器/嵌入式根视图,但从选项卡栏控制器中分离出两 (2) 个。这是图片:

在此处输入图像描述

UINavigationController多个s 链接到同一个 s似乎存在问题UIViewController。但是UINavigationController如果UIViewController它们通过UITabBarController.

于 2013-10-26T19:40:49.700 回答
0

正如您所说,您需要三个不同的 PostListVC 实例,那么您应该创建三个不同的 PostListVC 类型的视图控制器,并将每个选项卡连接到自己的选项卡。类是相同的,但每个选项卡都有自己的实例。

于 2013-10-26T17:36:50.860 回答