【问题标题】:Why does #available(iOS 11, *) resolve to true on iOS 12?为什么 #available(iOS 11, *) 在 iOS 12 上解析为 true?
【发布时间】:2019-01-01 04:12:33
【问题描述】:

我对@9​​87654322@ 语法的理解是它指定了iOS 的主要/次要版本。但是,我注意到受此 if 子句保护的代码将在 iOS 12 上执行。

预计#available 会解析为>= 检查吗?

无论是当前版本的 Xcode(面向 iOS 11)还是面向 iOS

的 beta 版本编译,似乎都会这样做

【问题讨论】:

  • 是否期望#available 解析为>= 检查? - 是的,它会检查从可用到当前raywenderlich.com/139077/availability-attributes-swift
  • 它应该是这样工作的。
  • 酷,感谢您的澄清和链接。我试图找到它的 Apple 文档,但无法...
  • 你为什么对一个有效的问题投反对票?只需在某种官方文档中发布答案和/或显示答案的链接。老实说,如果我们把他们当作傻瓜来对待,他们就不会发布问题。

标签: ios swift xcode ios11 ios12


【解决方案1】:

是的,这是意料之中的。 #available 用于包含已在特定 iOS 版本中添加的功能,这些功能自该版本之后可用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-21
    • 2012-06-01
    • 2021-02-12
    • 1970-01-01
    • 2018-03-08
    • 2018-05-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多