Lol*_*z89 6 iphone constants definition objective-c device
我有一个Constants.h文件,其实际上包含一些全局常量.由于我的应用程序是为iPhone和iPad构建的,我想为两种设备类型定义相同的常量(即具有相同的名称).
有关完整说明:
/******** pseudo code *********/
if (deviceIsIPad){
#define kPageMargin 20
}
else {
#define kPageMargin 10
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?谢谢.
L.
Max*_*Max 18
在预处理步骤中无法获得设备类型.它在运行时期间动态确定.您有两种选择:
创建两个不同的目标(分别用于iPhone和iPad)并在那里定义宏.
创建插入如下表达式的宏:
Run Code Online (Sandbox Code Playgroud)#define IS_IPAD (UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPad) #define kMyConstant1 (IS_IPAD ? 100 : 200) #define kMyConstant2 (IS_IPAD ? 210 : 230) #define kMyConstant3 (IS_IPAD ? @"ADASD" : @"XCBX")