【发布时间】:2014-09-28 16:16:09
【问题描述】:
我在 NSCoding 上找到了这段黑色的代码,它几乎确实想要我想要它。我找到它的链接在下面。 如何在其他类中创建 NSCoding 类和用户?下面的代码死了不起作用。我希望有人可以帮助我解决这个问题。
import Foundation
import UIKit
class User: NSObject, NSCoding {
var name: String
init(name: String) {
self.name = name
}
required init(coder aDecoder: NSCoder) {
self.name = aDecoder.decodeObjectForKey("name") as String
}
func encodeWithCoder(aCoder: NSCoder) {
aCoder.encodeObject(name, forKey: "name")
}
}
//new class where I want to set and get the object
class MyNewClass: UIViewController {
let user = User(name: "Mike")
let encodedUser = NSKeyedArchiver.archivedDataWithRootObject(user)
let decodedUser = NSKeyedUnarchiver.unarchiveObjectWithData(encodedUser) as User
}
//http://stackoverflow.com/questions/24589933/nskeyedunarchiver-fails-to-decode-a-custom-object-in-swift
【问题讨论】:
标签: ios inheritance swift nscoding