objective-c – 用于检测iPad的预处理器指令

我在头文件中声明了一些常量,这些常量需要根据它是iPad还是iPhone应用程序而有所不同.我该怎么做?

#ifdef ISIPAD
static NSString myconst = @"ipad!";
#else
static NSString myconst = @"iphone!";
#endif

解决方法

如果您正在编写通用应用程序,则无法进行编译时检查,因为编译器会为iPhone和iPad生成一个可执行文件.如果你有适用于iPhone和iPad的独立应用程序(带有共享代码库),为什么不自己#define ISIPAD.否则,您必须在运行时进行检查.

您可以通过检查您正在运行的设备然后正确设置它们,使它们在应用启动时初始化为全局变量.

相关文章

在有效期内的苹果开发者账号(类型为个人或者公司账号)。还...
Appuploader官网--IOS ipa上传发布工具,证书制作工具跨平台...
苹果在9月13号凌晨(北京时间)发布 iOS 16,该系统的设备可...
计算机图形学--OpenGL递归实现光线追踪
Xcode 14打出来的包在低版本系统运行时会崩溃,报错信息是Li...