1. 類判斷
限制當(dāng)前類在某個版本之后才能使用
- OC
API_AVAILABLE(ios(10.0))
會對類添加系統(tǒng)版本約束
API_AVAILABLE(ios(10.0))
@interface TestClass: NSObject { }
- Swift
@available(iOS 10.0, *)
對類添加系統(tǒng)版本約束
@available(iOS 10.0, *)
class TestClass: NSObject { }
2. 屬性判斷
//從版本iOS 10開始才使用這個屬性
@property(nonatomic,strong)NSDate * date API_AVAILABLE(ios(10.0),*)
*
代表全平臺(iPhone默责、ipad、iWatch等)
3. 函數(shù)外判斷
- 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以下的版本執(zhí)行這個
#endif
- Swift
@available(iOS 10.0, *)
限制函數(shù)適用系統(tǒng)范圍 10.0以上
@available(iOS 10.0, *)
func funcName() { }
4. 函數(shù)內(nèi)判斷
- OC
- (void)methodName3 {
if (@avavilable(iOS 10.0,*)) {
//這里的需要超過iOS 10才會執(zhí)行
}
}
- Swift
func methodName4() {
if #available(iOS 10.0, *) {
print("iOS系統(tǒng)在10.0以上(包含10.0)才適用")
} else {
print("iOS系統(tǒng)在10.0以下才適用")
}
}