包含另一个类的Swift编码类

时间:2015-09-08 19:16:22

标签: swift class nscoding

我正在尝试使用swift对类中的数据进行编码,但我的类包含另一个类。是否可以对第二类进行编码?

1 个答案:

答案 0 :(得分:2)

不确定。它也应该实现NSCoding。例如,我的FQGetPermissionOperation包含并编码/解码FQUploadTask对象。 FQUploadTask还实现了NSCoding并继承了NSObject。

class FQGetPermissionOperation : NSObject, NSCoding {
let uploadTask: FQUploadTask

required init?(coder aDecoder: NSCoder) {
    uploadTask = aDecoder.decodeObjectForKey("uploadTask") as! FQUploadTask
    super.init(coder: aDecoder)
}

override func encodeWithCoder(aCoder: NSCoder) {
    aCoder.encodeObject(uploadTask, forKey: "uploadTask")
    super.encodeWithCoder(aCoder)
}
// Some other code
}