iOS開發(fā) available版本限制基礎使用

1. 類判斷

限制當前類在某個版本之后才能使用

  • 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ù)內判斷
  • 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以下才適用")            
    }
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容