【发布时间】:2020-05-09 08:07:22
【问题描述】:
我有以下用例:
class Foo: NSObject {
var bar = ""
}
let foo = Foo()
foo.setValue("A name", forKey: "bar") //throws exception: this class is not key value coding-compliant for the key bar.
print("Foo.bar: \(foo.bar)")
Apple 文档 (here) 指出,在 Swift 中,子类 NSObject 的每个类默认都符合键值。如果是这样,为什么我得到不符合键值的异常?
默认情况下,从 NSObject 或其子类之一继承的 Swift 对象的属性符合键值编码。
我错过了什么吗?有谁知道可能是哪个问题?
注意:我尝试将“bar”属性设为 NSString,但遇到了同样的异常。
【问题讨论】:
标签: ios swift iphone crash key-value-coding