我有一个采用协议的简单Time
类:NSCoding
class Time: NSObject, NSCoding {
var hours: Int
func encode(with aCoder: NSCoder) {
aCoder.encode(self.hours, forKey: "hours")
}
public required init?(coder aDecoder: NSCoder) {
guard let hours = aDecoder.decodeObject(forKey: "hours") as? Int
else { return nil }
self.hours = hours
}
init(hours: Int) {
self.hours = hours
}
}
我想成为我实体的Transformable
属性:Watch
final class Watch: NSManagedObject {
@NSManaged public fileprivate(set) var time: Time
}
如此处所示:
我成功地将它保存到托管对象上下文中,但是当我重新加载应用程序时,time
属性是nil
.
我在这里错过了什么吗?为什么这个属性没有成功保存?这似乎是其他帖子所需的全部内容。
非常感谢您的帮助!