我刚刚安装了Xcode 10 Beta。
问题是:
XCode 10中的错误消息是
'NSAccessibility'在Swift中不可用:已重命名为 “ NSAccessibilityProtocol”
XCode 9中的错误消息是
使用未声明类型的“ NSAccessibilityProtocol”
有没有办法使项目与两个XCode版本兼容?
我尝试过:
#if swift(>=4.1)
return object is NSAccessibilityProtocol
#else
return object is NSAccessibility
#endif
但这没有帮助。
如果我没记错的话,两个XCode的Swift版本是相同的,它取决于当前上下文中的“构建设置”。但是我至少尝试过。
我读过compatibility article,但目前提示很少。
似乎取决于AppKit版本。但是我不知道如何表达这种情况。
Swift和Objective-C API增强功能AppKit的Swift接口是
在macOS 10.14中进行了改进,以实现更高的清晰度,一致性, 简洁,以及Swift的原生感觉。在许多情况下,这些增强功能 对相应的Objective-C API进行改进。的 变更包括正式制定非正式协议;将枚举移动到 通用前缀标识符约定;悬挂Swift声明 放入适当的本地名称空间;重命名Swift的某些功能; 用计算的属性替换函数;为某些人添加二传手 以前是只读的数组值属性;和类似的增强 这些发行说明中讨论了这些内容。