Swift - 在Struct中使用#available初始化变量

时间:2018-06-08 07:18:08

标签: swift swift-structs

我需要根据操作系统版本初始化变量。我试图在`struct中使用#available。我需要在声明时初始化变量。

这是我尝试过的代码,

struct ColorConstants {

  static var os = 0
  #available(iOS 9, *)
  os = 9

  #available(iOS 10, *)
  os = 10
}

它给我一个构建错误:

  

预期声明

code error screenshot

1 个答案:

答案 0 :(得分:2)

不确定你真正尝试做什么,所以可能有更好的方法,但基于你在问题中显示的内容,你可以尝试这样的事情:

static var os: Int {
    if #available(iOS 9, *) {
        return 9
    }
    if #available(iOS 10, *) {
        return 10
    }

    return 0
}