过去,我使用以下预处理器代码来有条件地执行适用于不同iOS版本的代码:
#ifdef __IPHONE_OS_VERSION_MIN_REQUIRED
// target is iOS
#if __IPHONE_OS_VERSION_MIN_REQUIRED < 60000
// target is lower than iOS 6.0
#else
// target is at least iOS 6.0
#endif
#endif
然而,在iOS 7中我遇到了以下问题:
#ifdef __IPHONE_OS_VERSION_MIN_REQUIRED
// target is iOS
#if __IPHONE_OS_VERSION_MIN_REQUIRED < 70000
// target is lower than iOS 7.0
NSLog(@"This message should only appear if iOS version is 6.x or lower");
#else
// target is at least iOS 7.0
#endif
#endif
上面的
NSLog
信息会在iOS 7下的控制台上显示,我有做错什么吗?编辑:以下代码在iOS 7(模拟器和设备)上运行。
NSLog(@"Version %i", __IPHONE_OS_VERSION_MIN_REQUIRED);
提示:版本号为60000