ios - 无法摆脱 "Splitview controller is expected to have a view controller at index 0 before it' s used"在 iOS6 中的错误

标签 ios ios6 uisplitviewcontroller ipad

我正在尝试将我的应用程序转换为通用的 iPad 支持,但无论我做什么,我都无法摆脱“Splitview Controller 在使用前应在索引 0 处有一个 View Controller !”应用启动后立即出错。

我使用 iOS6 作为目标,XCode 4.6.3。尝试了我可以在此网站和 Google 上找到的所有内容,但对我没有任何帮助。

我想添加一个 TabBar Controller 作为主 Controller (在拆分 Controller 中留下一个)和一些其他 Controller 作为细节 Controller 。 这是我在 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 设置背景图像,我正在加载它的 View 。 所以解决方法是在设置背景色之前先设置viewControllers数组。

关于ios - 无法摆脱 "Splitview controller is expected to have a view controller at index 0 before it' s used"在 iOS6 中的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18039753/

相关文章:

ios - 在 UIImageView 上下动画 UIImage(就像它悬停一样)循环

ios - 在 Split View中执行 "prepare for segue"方法

ios - Ipad 中详细 View 的 SplitView 导航问题

ios - 隐藏和取消隐藏 SKSprite 节点

ios - 向 drawRect 中的 NSString 文本添加投影 : method without using UILabel

ios - Application.Current.properties 在最新的 xamarin 表单版本中被破坏了吗?

iOS Swift - 在容器 View 中实现 SplitViewController

ios - 使用 Passkit 库读取二维条码

ios - 如何配置我的服务器以提供与 MPMoviePlayerViewController 一起播放的视频文件?

ios6 - 如何让应用兼容 iOS 6 和 iOS 7?