检测我正在iPad上运行iPhone应用程序

时间:2012-11-01 07:27:54

标签: iphone ios ipad

我熟悉使用(UI_USER_INTERFACE_IDIOM()== UIUserInterfaceIdiomPad)检查我是否在iPad上。 但是,仅适用于通用应用。 我想知道是否有办法知道我在iPad上运行 iPhone 应用程序。

谢谢!

2 个答案:

答案 0 :(得分:0)

我认为即便如此,它也会给出正确的设备指示..

由于UIDevice在整个设备中使用共享类,因此它应该只为iPad提供应用程序的类型。

你试过吗?

根据apple和UIDevice类中定义的枚举,就像这样

typedef NS_ENUM(NSInteger, UIUserInterfaceIdiom) {
#if __IPHONE_3_2 <= __IPHONE_OS_VERSION_MAX_ALLOWED
UIUserInterfaceIdiomPhone,           // iPhone and iPod touch style UI
UIUserInterfaceIdiomPad,             // iPad style UI
#endif
};

在这里你可以看到它枚举只是给出了它使用的UI风格,因为它是在iPhone风格的UI中运行的iPhone应用程序,它提供为UIUserInterfaceIdiomPhone

此外,名称本身也表示UserInterfaceIdiom表示它与UI屏幕尺寸有关。

相反,您可以使用

[[UIDevice currentDevice] model];

这给出了确切的设备型号,在这里您可以检查字符串“iPad”的范围以识别设备。

答案 1 :(得分:0)

您可以使用[[UIDevice currentDevice] model]