【问题标题】:"Token is not a valid binary operator in a preprocessor subexpression" when using UIKitForMac使用 UIKitForMac 时,“令牌不是预处理器子表达式中的有效二元运算符”
【发布时间】:2019-06-07 15:11:56
【问题描述】:

所以我正在尝试为 mac 编译我的 iOS 项目,当我尝试使用时

#if !targetEnvironment(UIKitForMac)

我从标题中得到了错误。

我尝试将构建目标设置为 iOS 13,但似乎没有任何效果。

【问题讨论】:

    标签: xcode11 ios13 uikitformac


    【解决方案1】:

    Objective-C

    #if !TARGET_OS_MACCATALYST
    // Code to exclude from Mac.
    #endif
    

    斯威夫特

    #if !targetEnvironment(macCatalyst)
    // Code to exclude from Mac.
    #endif
    

    来源:

    【讨论】:

      【解决方案2】:

      如果你使用的是objective-c而不是swift,你应该使用:

      #if !TARGET_OS_UIKITFORMAC
      #endif
      

      【讨论】:

      • 就是这样!这在任何地方都有记录吗?即使在官方文档中选择 Objective-C 时也不会显示:developer.apple.com/documentation/uikit/…
      • 它认为这是一个文档错误,因为无论选择哪种语言,它都会显示相同的代码。它在 WWDC 演讲中有所展示,代码完成也有帮助。 :-)
      • 代码完成对我没有任何作用 :( 可能是因为我的计算机在使用 Xcode 11 时速度非常慢。无论如何,谢谢!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-03
      • 1970-01-01
      • 2018-09-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-26
      相关资源
      最近更新 更多