Can';“不要摆脱”;Splitview控制器应在其前面的索引0处有一个视图控制器';“用过的”;iOS6中的错误

Can';“不要摆脱”;Splitview控制器应在其前面的索引0处有一个视图控制器';“用过的”;iOS6中的错误,ios,ios6,uisplitviewcontroller,ipad,Ios,Ios6,Uisplitviewcontroller,Ipad,我正在尝试将我的应用程序转换为支持iPad的universal,无论我做什么,我都无法摆脱应用程序启动后出现的“Splitview控制器在使用前应具有索引为0的视图控制器!”错误 我使用iOS6作为目标,XCode 4.6.3。尝试了所有我能在这个网站和谷歌上找到的东西,根本帮不了我 我想添加一个TabBar控制器作为主控制器(拆分控制器中的左控制器),并添加一些其他控制器作为详细控制器。 以下是我在AppDelegate.m中的当前代码: tabController = [[UITabBarC

我正在尝试将我的应用程序转换为支持iPad的universal,无论我做什么,我都无法摆脱应用程序启动后出现的“Splitview控制器在使用前应具有索引为0的视图控制器!”错误

我使用iOS6作为目标,XCode 4.6.3。尝试了所有我能在这个网站和谷歌上找到的东西,根本帮不了我

我想添加一个TabBar控制器作为主控制器(拆分控制器中的左控制器),并添加一些其他控制器作为详细控制器。 以下是我在AppDelegate.m中的当前代码:

tabController = [[UITabBarController alloc] init];
[tabController setViewControllers:[NSArray arrayWithObjects:navAddVC, nav, svcNav, stvcNav, nil]]; 
FirstDetailViewController *fdvc = [[FirstDetailViewController alloc];
initWithNibName:@"FirstDetailViewController" bundle:nil];
UINavigationController *fdvcNav = [[UINavigationController alloc] initWithRootViewController:fdvc];
viewControllers = [[NSArray alloc] initWithObjects:tabController, fdvcNav, nil];
UISplitViewController *splitvc = [[UISplitViewController alloc] initWithNibName:nil bundle:nil];
[[splitvc view] setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"splitViewControllerBG"]]];
[splitvc setViewControllers:viewControllers];
[splitvc setDelegate:fdvc];
[[self window] setRootViewController:splitvc];
[[self window] makeKeyAndVisible];

谢谢你的帮助。

多亏了@Wain,我解决了这个问题

问题是,通过将背景图像设置到分割的vc,我加载了它的视图。
因此,解决方案是在设置背景色之前设置viewControllers数组。

在加载视图以设置背景色之前,您是否尝试过设置
viewControllers
?@Wain谢谢!就这样。愚蠢的我,没有注意到这个细节。@Wain谢谢,这个警告以前没有显示过。不知道为什么它突然出现这也适用于设置UISplitViewController的其他属性,例如
setPreferredDisplayMode
。只需在设置VCs后进行配置。