在 Swift 2 中,如何使用#available
条件来阻止代码块在某个平台上执行?*
似乎允许您在部署目标中指定的版本。并且指定iOS Int.max
不起作用。
问问题
55 次
2 回答
1
#available
用于指定特定平台上的特定版本。如果您只想将代码限制在某个平台上,您可以使用编译器指令。
#if os(iOS)
// do stuff only on iOS
#elseif os(OSX)
// do stuff only on OS X
#endif
但我相信您尝试使用的原因Int.max
不起作用,因为它需要UInt32
文字(即最多 4294967295,即 (2^32) - 1 或 UInt32.max -1):
if #available(iOS 1000, watchOS 1000, *) {
// Should execute only on OSX higher than deployment target
} else {
}
于 2015-06-09T21:34:55.177 回答
0
请查看 swift 2.0 中可用性检查的语法
if #available(platform name version, ..., *) {
statements to execute if the APIs are available
} else {
fallback statements to execute if the APIs are unavailable
}
于 2015-09-24T10:13:08.207 回答