0

我有 iphone.storyboard 和 ipad.storyboard。

iPhone 故事板有 UITabBarController 作为根视图控制器。现在我必须从 iPad 故事板开始。我在这里需要一个拆分视图控制器,苹果说它必须是根视图。现在我添加一个拆分视图控制器,然后将 UITabBarController 添加到 iPad 故事板。我的应用程序由于代码而崩溃 -

UITabBarController *tabBarController = 
(UITabBarController *)self.window.rootViewController;
UITabBarItem *tabBarItem0 = [tabBarController.tabBar.items objectAtIndex:0];
UITabBarItem *tabBarItem1 = [tabBarController.tabBar.items objectAtIndex:1];
UITabBarItem *tabBarItem2 = [tabBarController.tabBar.items objectAtIndex:2];
UITabBarItem *tabBarItem3 = [tabBarController.tabBar.items objectAtIndex:3];

当我在 iPad 故事板中添加一个带有四个选项卡的简单 UITabBarController 时,它工作正常。

我应该为设备添加任何检查吗?如何解决这个问题,因为我必须使用拆分视图控制器?

请帮忙

4

1 回答 1

0

您应该像这样拆分特定于 iPhone 和特定于 iPad 的代码:

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
    UISplitViewController *splitViewControlelr = 
    (UISplitViewController *)self.window.rootViewController;
    // work with your split view controller
}
else
{
    UITabBarController *tabBarController = 
    (UITabBarController *)self.window.rootViewController;
    // work with your tab bar controller
}
于 2013-10-20T15:42:10.357 回答