Ios 在情节提要中使用同一视图控制器的多个副本

Ios 在情节提要中使用同一视图控制器的多个副本,ios,storyboard,viewcontroller,Ios,Storyboard,Viewcontroller,我的应用程序中有以下设置: 我的初始视图控制器是一个UITabBarController。 选项卡: 1) UINavigationController->PostListVC 2) UINavigationController->CategoriesListVC 3) UINavigationController->PostListVC 4) UINavigationController->PostListVC 5) UINavigationController->MoreViewContro

我的应用程序中有以下设置: 我的初始视图控制器是一个UITabBarController。 选项卡:

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

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

我所做的是创建了5个UINavigationController,将它们连接到uitabbarcontroller,然后为其中3个创建了一个根视图控制器序列,并将其连接到同一PostListVC视图-这样我就不需要维护同一视图的3个设计

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

我试着用一个3选项卡的例子来说明我连接故事板的方式:
如您所见,最上面和最下面的视图都连接到PostListVC

我不知道是什么问题。我想我使用故事板有点错误

有人知道我怎么解决这个问题吗

谢谢

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

编辑2: 示例的修改版本,显示了所提供解决方案的问题:


使用此方法无法创建不同的tabbarItem,而且,无法将巴里项放置在一行中,即使您试图改变顺序。

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

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

解决方案是使用一(1)个导航控制器/嵌入式根视图,但使用两(2)个选项卡栏控制器分段。图片如下:


多个
uiavigationcontroller
s链接到同一
UIViewController
时似乎出现问题。但是相同的
UINavigationController
链接到相同的
UIViewController
没有问题,前提是它们是通过
uitabarcontroller
单独实例化的。此处没有足够的信息可供帮助,但图像中没有任何内容显示错误。我建议向每个视图控制器添加一些
NSLog
s(可能是
viewDidLoad
),以确保传递了正确的信息,并实例化了正确的UIViewController类。请注意,每个都应该是唯一的。这是调试如此复杂的东西的唯一方法。viewDidLoad和loadView只调用一次-PostListVC可能没有正确实例化,但我不知道为什么。需要检查几件事:类是否在IB中正确设置?PostListVC中的
NSLog
s告诉了您什么?视图是否在IB中连接?我不确定我能帮上什么忙。我添加了一个示例项目来说明这个问题。这对我来说似乎是个bug。我建议您将您的初始问题(示例项目1)记录在Apple上,说明如果您使用解决方案(示例项目2),您不能有不同的项目名称。是否有办法使所有3个项目共享相同的xib?我目前拥有故事板中的所有设计,我也得到了这个解决方案,但是:1)使用这种方式,你不能为不同的视图创建不同的TabBarItem(例如,如果你有不同的按钮图像)。2) 它将BARITEM聚在一起-您不能在链接到同一viewController的2个选项卡之间添加不同的选项卡BARITEM。(编辑2中添加了此问题的示例)