当我在iOS6中切换tabBarItems数组时,为什么会出现空白屏幕?

时间:2012-09-21 23:34:42

标签: ios uitabbarcontroller ios6 uiwindow

我的应用程序在4.3和5.1中工作得非常好。我所做的是将一个登录视图作为UITabBarController中的单个视图,当用户登录时,我的应用程序将tabBarItems更改为另一组viewControllers(许多选项卡)。它在iOS5中运行得非常完美,但是现在,它在iOS6中完全崩溃了 - 我该怎么做。

1 个答案:

答案 0 :(得分:2)

我在这上花了几个小时,最后发现了问题。似乎只是切换tabBar数组不会导致viewControllers经历他们通常所做的相同初始化。解决方案是首先nif rootViewController,然后再次设置它。一旦我这样做,一切都很完美:

tabBarController.viewControllers = vcs; // my array, either a login view or the real array
tabBarController.customizableViewControllers = nil;
tabBarController.selectedIndex = 0;
window.rootViewController = nil; // THIS WAS THE MAGIC LINE - nil then set again
window.rootViewController = tabBarController;
[window makeKeyAndVisible];

我真的希望这能让其他人省下我刚刚经历的头发拉动时间!