你好,歡迎來到IOS教程網

 Ios教程網 >> IOS使用技巧 >> IOS技巧綜合 >> 不同iOS版本做代碼適配__IPHONE_OS_VERSION_MAX_ALLOWED 和 __IPHONE_8_0等專業術語

不同iOS版本做代碼適配__IPHONE_OS_VERSION_MAX_ALLOWED 和 __IPHONE_8_0等專業術語

編輯:IOS技巧綜合
[摘要]本文是對不同iOS版本做代碼適配__IPHONE_OS_VERSION_MAX_ALLOWED 和 __IPHONE_8_0等專業術語的講解,對學習IOS蘋果軟件開發有所幫助,與大家分享。

目前開發只想最低版本支持iOS8了,iOS8以前的就不管了,然後現在iOS9和iOS10出來以後,有些新的API,也有些棄用的API,為了兼容,有時候代碼裡面需要編寫判斷不同iOS版本,或者只允許指定的iOS版本才可以編譯或者執行。

需要用到以下方式,以下方式只針對OC(Swift的寫法暫時還不清楚,等需要的時候在補充):

示例:

//ios8.0以後用此方法替代willRotateToInterfaceOrientation:duration:這個方法
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 80000
// 視圖控制器旋轉到某個尺寸
- (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id <UIViewControllerTransitionCoordinator>)coordinator
{
  [super viewWillTransitionToSize:size withTransitionCoordinator:coordinator];
  if (size.height > size.width)
  {
    NSLog(@"-------當前設備方向是豎屏-------");
  }
  else
  {
    NSLog(@"-------當前設備方向是橫屏-------");
  }
}
#endif

__IPHONE_OS_VERSION_MIN_REQUIRED:最低iOS版本要求

__IPHONE_OS_VERSION_MAX_ALLOWED:允許最大的iOS版本

#define __MAC_10_0 1000

#define __MAC_10_1 1010

#define __MAC_10_2 1020

#define __MAC_10_3 1030

#define __MAC_10_4 1040

#define __MAC_10_5 1050

#define __MAC_10_6 1060

#define __MAC_10_7 1070

#define __MAC_10_8 1080

#define __MAC_10_9 1090

#define __MAC_10_10 101000

#define __MAC_10_10_2 101002

#define __MAC_10_10_3 101003

#define __MAC_10_11 101100

#define __MAC_10_11_2 101102

#define __MAC_10_11_3 101103

#define __MAC_10_11_4 101104

#define __MAC_10_12 101200

/* __MAC_NA is not defined to a value but is uses as a token by macros to indicate that the API is unavailable */

#define __IPHONE_2_0 20000

#define __IPHONE_2_1 20100

#define __IPHONE_2_2 20200

#define __IPHONE_3_0 30000

#define __IPHONE_3_1 30100

#define __IPHONE_3_2 30200

#define __IPHONE_4_0 40000

#define __IPHONE_4_1 40100

#define __IPHONE_4_2 40200

#define __IPHONE_4_3 40300

#define __IPHONE_5_0 50000

#define __IPHONE_5_1 50100

#define __IPHONE_6_0 60000

#define __IPHONE_6_1 60100

#define __IPHONE_7_0 70000

#define __IPHONE_7_1 70100

#define __IPHONE_8_0 80000

#define __IPHONE_8_1 80100

#define __IPHONE_8_2 80200

#define __IPHONE_8_3 80300

#define __IPHONE_8_4 80400

#define __IPHONE_9_0 90000

#define __IPHONE_9_1 90100

#define __IPHONE_9_2 90200

#define __IPHONE_9_3 90300

#define __IPHONE_10_0 100000

/* __IPHONE_NA is not defined to a value but is uses as a token by macros to indicate that the API is unavailable */

#define __TVOS_9_0 90000

#define __TVOS_9_1 90100

#define __TVOS_9_2 90200

#define __TVOS_10_0 100000

#define __WATCHOS_1_0 10000

#define __WATCHOS_2_0 20000

#define __WATCHOS_3_0 30000

  

可以在Xcode 中按住Command鍵,點擊查看更多官方定義的宏。

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved