主UIStoryboard
有一个UITabBarController
,其中有5个项目,每个项目足够大,可以由自己的故事板实例表示。我想将所有5个分成不同的故事板。换句话说,当选择TabBarItem1
时,我想从不同的故事板加载其各自的UIViewController
,是否可以实现此目的?我正在考虑以编程方式为此创建UITabBarController
,这是最优雅的解决方案吗?
编辑 -
NSMutableArray *viewControllers = [NSMutableArray array];
MyViewController1 *myController1 = [[StoryboardManager myStoryboard1] instantiateInitialViewController];
myController1.title = @"Title";
[viewControllers addObject:myController1];
MyViewController2 *myController2 = [[StoryboardManager myStoryboard2] instantiateInitialViewController];
myController2.title = @"Title";
[viewControllers addObject:myController2];
// ...etc
self.viewControllers = viewControllers; // self - subclass of a UITabBarController
答案 0 :(得分:2)
您应该能够在代码中执行此操作,方法是获取其他故事板的实例,实例化其初始视图控制器,最后将其添加到选项卡栏控制器viewControllers数组中。
答案 1 :(得分:0)
如果使用iOS9,可以在UITabbarController的一个选项卡中选择所有视图控制器,选择编辑器 - >在XCode中重构到Storyboard,并创建一个新的Storyboard。 XCode将自动执行其他所有操作。不幸的是,它仅适用于iOS 9。