У меня есть простой 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
.
Я что-то упустил? Почему это свойство не сохраняется? Кажется, это все, что требуется для других постов.
Большое спасибо за любую помощь!