使用#define确定ios设备类型

时间:2014-03-24 00:12:08

标签: ios preprocessor

我正在弄清楚如何确定iOS设备类型并遇到了这个解决方案:https://stackoverflow.com/a/16319767/440646

问题:
#define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)

我读到#define是一个在编译之前得到评估的预处理器,UI_USER_INTERFACE_IDIOM()语句也是如此。

我的问题是编译器如何知道要编译哪个设备,因为我们只会知道用户在运行时使用的是哪个设备?

1 个答案:

答案 0 :(得分:0)

#define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)不检查特定设备(iPhone 4,iPhone 5等),而是检查设备类别(iPhone,iPad)。

这是另一个SO问题,显示宏的作用。这有助于您了解:Is it safe to check for UI_USER_INTERFACE_IDIOM() to determine if it's an iPhone or iPad?