我有标签应用程序,3个标签包含完全相同的屏幕,只有不同的数据。
为了实现这些屏幕的功能,我使用了分割视图控制器。 我需要做的是创建3个选项卡,所有选项卡都使用此拆分视图控制器(具有相同的主视图和详细视图控制器),而不会在故事板中三次复制主视图控制器和详细视图控制器。
我尝试创建三个拆分视图控制器,并将它们全部链接到一个主视图控制器和一个详细视图控制器,但这不起作用。这些控制器中只有一个实际使用它们。其他只是显示黑屏。
有关如何做到这一点的任何提示?
答案 0 :(得分:1)
我认为我使用以下方法让它工作:
在故事板中,Split View Controller的Storyboard ID为'splitVc':
然后,我在AppDelegate
中使用了以下代码:
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
UISplitViewController *splitVc1 = [self.window.rootViewController.storyboard
instantiateViewControllerWithIdentifier:@"splitVc"];
UISplitViewController *splitVc2 = [self.window.rootViewController.storyboard
instantiateViewControllerWithIdentifier:@"splitVc"];
UISplitViewController *splitVc3 = [self.window.rootViewController.storyboard
instantiateViewControllerWithIdentifier:@"splitVc"];
UITabBarController *tabBarVc = (UITabBarController *)self.window.rootViewController;
tabBarVc.viewControllers = @[splitVc1, splitVc2, splitVc3];
return YES;
}
这给了我似乎是UISplitViewController
的3个独立实例,每个实例都分配给UITabBarController
中的3个选项卡中的1个,这是我UIWindow
的根视图控制器。
这就是你想要的吗?