Ich habe das Apple-Handbuch zum Speichern von Daten in swift verwendet, aber wenn ich versuche, es zu kompilieren, sagt es mir, dass es nicht konform ist. Basierend auf Apple's Guide und anderem Code sollte es sein.Die Klasse entspricht nicht dem NSCoding-Protokoll
// MARK: NSCoding
func encodeWithCoder(aCoder: NSCoder) {
aCoder.encodeObject(firstName, forKey: "firstName")
aCoder.encodeObject(lastName, forKey: "lastName")
aCoder.encodeObject(phoneNumber, forKey: "phoneNumber")
aCoder.encodeObject(email, forKey: "email")
aCoder.encodeObject(address, forKey: "address")
}
required convenience init?(coder aDecoder: NSCoder) {
firstName = aDecoder.decodeObjectForKey("firstName") as! String
lastName = aDecoder.decodeObjectForKey("lastName") as! String
phoneNumber = aDecoder.decodeObjectForKey("phoneNumber") as! String
email = aDecoder.decodeObjectForKey("email") as! String
address = aDecoder.decodeObjectForKey("addressq") as! String
self.init(phoneNumber: phoneNumber, firstName: firstName, lastName: lastName, email: email, address: address)
}
Also ich bin einfach nicht sicher, warum es nicht konform ist, wenn ich Apples Programm gut laufen lassen kann.
EDIT: So scheint das Problem zu sein, dass ich meine Klasse nicht von NSObject geerbt hatte. Das hat das Problem gelöst.
Können Sie zeigen Sie Ihre 'CLASS' Definitionszeile? – Paulw11