1. 类判断
限制当前类在某个版本之后才能使用
- OC
API_AVAILABLE(ios(10.0))
会对类添加系统版本约束
API_AVAILABLE(ios(10.0))
@interface TestClass: NSObject { }
- Swift
@available(iOS 10.0, *)
对类添加系统版本约束
@available(iOS 10.0, *)
class TestClass: NSObject { }
2. 属性判断
//从版本iOS 10开始才使用这个属性
@property(nonatomic,strong)NSDate * date API_AVAILABLE(ios(10.0),*)
*
代表全平台(iPhone、ipad、iWatch等)
3. 函数外判断
- OC
__IPHONE_OS_VERSION_MIN_REQUIRED
:最低iOS版本要求
__IPHONE_OS_VERSION_MAX_ALLOWED
:允许最大的iOS版本
#if __IPHONE_OS_VERSION_MIN_REQUIRED >= 100000 // (iOS10以上的版本才适用)
- (void)methodName{}
#else
- (void)methodName2 {} //iOS 10以下的版本执行这个
#endif
- Swift
@available(iOS 10.0, *)
限制函数适用系统范围 10.0以上
@available(iOS 10.0, *)
func funcName() { }
4. 函数内判断
- OC
- (void)methodName3 {
if (@avavilable(iOS 10.0,*)) {
//这里的需要超过iOS 10才会执行
}
}
- Swift
func methodName4() {
if #available(iOS 10.0, *) {
print("iOS系统在10.0以上(包含10.0)才适用")
} else {
print("iOS系统在10.0以下才适用")
}
}
网友评论