3

我将以下代码添加到 AppDelegate:

if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
    self.viewController = [[ViewController alloc] initWithNibName:@"ViewController_iPhone" bundle:nil];
    NSLog(@"iPhone found");
} else {
    self.viewController = [[ViewController alloc] initWithNibName:@"ViewController_iPad" bundle:nil];
    NSLog(@"iPad found");
}

在 iPad 2 上运行时,userInterfaceIdiom 始终等于 UIUserInterfaceIdiomPhone。我的 iPad 2 在 iOS 6.1.3 上运行。

我无法找出问题所在。

任何帮助表示赞赏!

提前致谢!

4

2 回答 2

6

目标设备应该是通用的,

在此处输入图像描述

于 2013-05-01T14:13:37.877 回答
0

用这个

#define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)

if (!IS_IPAD) {
    self.viewController = [[ViewController alloc] initWithNibName:@"ViewController_iPhone" bundle:nil];
    NSLog(@"iPhone found");
} else {
    self.viewController = [[ViewController alloc] initWithNibName:@"ViewController_iPad" bundle:nil];
    NSLog(@"iPad found");
}
于 2013-05-01T14:14:13.863 回答