我有一段代码只能在 iOS 6 或更高版本上运行。
control.tintColor = [UIColor greenColor];
是否有准备好使用的编译器指令,例如#ifdef iOS6_or_greater
?
我有一段代码只能在 iOS 6 或更高版本上运行。
control.tintColor = [UIColor greenColor];
是否有准备好使用的编译器指令,例如#ifdef iOS6_or_greater
?
最好检查功能,而不是 iOS 版本。
例如,您可以使用 respondsToSelector 查看是否支持给定的方法。
[someObject respondsToSelector:@selector(someMethod)]
做不到这一点,有一个预处理器指令
#if __IPHONE_OS_VERSION_MIN_REQUIRED >= 60000
- (BOOL)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortrait;
}
#endif
你可以去这个............
float currSysVerFloat = [[[UIDevice currentDevice] systemVersion]floatValue];
if (currSysVerFloat>=6.0) {
isversion6=TRUE;
control.tintColor = [UIColor greenColor];
//This is iOS6 or greater
} else {
//do nothing
isversion6 = FALSE;
}
我只是给你比较系统版本的基本代码
将以下代码写入
#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)
你的projectName-Prefix.pch
所以你可以在任何你想要的地方访问它。
并将其作为条件应用,例如
if( SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"6") )
{
}
else
{
}