我正在研究Objective-C / Swift macOS混合应用程序。
我正在编写一些代码,检查从arrayController的选择键返回的值。 NSArrayControllers返回Any,通常我会通过查看Any是否为NSMultipleValuesMarker来检查多重选择。但是,在Swift 3中编写此错误信息:
Use of undeclared type 'NSMultipleValuesMarker'
我正在尝试的代码是:
var selection = arrayController.value(forKeyPath: "selection.image")
if selection is NSMultipleValuesMarker {
// Do something for this case
}
我无法弄清楚缺少什么可以使用NSMultipleValuesMarker。我曾尝试导入Foundation,Cocoa和AppKit,但它们似乎都无法使错误消失。
最佳答案
“ is”是类型检查运算符,用于检查实例是否属于某个子类类型。使用selection === NSMultipleValuesMarker
检查selection
是否为NSMultipleValuesMarker
。
关于macos - NSMultipleValuesMarker在Swift 3中使用未声明的类型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40449586/