我在头文件中声明了一些常量,这些常量需要根据它是 iPad 还是 iPhone 应用程序而有所不同。我该怎么做?
即
#ifdef ISIPAD
static NSString myconst = @"ipad!";
#else
static NSString myconst = @"iphone!";
#endif
最佳答案
如果您正在编写通用应用程序,则无法进行编译时检查,因为编译器会为 iPhone 和 iPad 生成一个可执行文件。如果您有适用于 iPhone 和 iPad 的独立应用程序(具有共享代码库),为什么不自己适本地#define ISIPAD。否则,您必须在运行时进行检查。
您可以让它们成为全局变量,在您的应用程序启动时通过检查您正在运行的设备然后适本地设置它们来初始化它们。
关于objective-c - 用于检测 iPad 的预处理器指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3768110/