У меня есть представление списка, которое собирает некоторые данные, которые пользователь вводит в форму.
Я планирую предоставить пользователю возможность нажать на элемент списка и записать дату, когда он щелкнул по нему.Поэтому я создал версию NSCoding, которая выглядит следующим образом.
class Item: NSObject, NSCoding {
var uuid: String = NSUUID().uuidString
var name: String = ""
var days: [ NSDate ]?
func encode(with coder: NSCoder) {
coder.encode(uuid, forKey: "uuid")
coder.encode(name, forKey: "name")
coder.encode(days, forKey: "days")
}
required init?(coder aDecoder: NSCoder) {
super.init()
if let archivedUuid = aDecoder.decodeObject(forKey: "uuid") as? String {
uuid = archivedUuid
}
if let archivedName = aDecoder.decodeObject(forKey: "name") as? String {
name = archivedName
}
if let archivedDays = aDecoder.decodeObject(forKey: "days") as? [ NSDate ] {
var getDays = archivedDays
}
}
init(name: String, days: [NSDate]) {
self.days = days
self.name = name
super.init()
}
}
Я хочу получить текущий список дней, который будет массивом, а затем добавить еще одну дату в конец этого массива.Однако я не уверен, как извлечь эти данные и обновить массив, добавив к нему больше.
Я знаю, как заменить данные, но не обновлять их или добавлять к ним больше с помощью NSCoding.Как бы я поступил так?