【发布时间】:2018-11-20 02:03:39
【问题描述】:
我有一个简单的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。
我在这里遗漏了什么吗?为什么这个属性没有成功保存?这似乎是其他帖子所需的全部内容。
非常感谢您的帮助!
【问题讨论】:
标签: ios swift core-data nscoding transformable