【问题标题】:Demarcating iOS API Availability [duplicate]划定 iOS API 可用性 [重复]
【发布时间】:2020-05-13 02:44:40
【问题描述】:

使用 Mac Catalyst 时,标准的做法是使用以下条件语法来标记整个方法的可用性 ->

#if TARGET_OS_MACCATALYST
- (void)customMethodOnlyForCatalyst {

}
#endif

是否存在 API 可用性的等效条件?即,类似于以下内容...

#if @available(iOS 13.0, *)
- (void)customMethodOnlyForiOS13AndAbove {

}
#endif

谢谢!

【问题讨论】:

    标签: ios objective-c xcode macos


    【解决方案1】:

    您可以使用API_AVAILABLE 宏。

    文档可通过here获取。

    例如:

    @interface MyViewController : UIViewController
    - (void) newMethod API_AVAILABLE(ios(11), macosx(10.13));
    @end
    

    newMethod 仅适用于 iOS 11 和 macOS 10.13。

    使用您的示例:

    - (void)customMethodOnlyForiOS13AndAbove API_AVAILABLE(ios(13)) { }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-14
      • 2012-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-24
      相关资源
      最近更新 更多