gpt4 book ai didi

swift - 将具有嵌套自定义类的自定义类数组存储到 standardUserDefaults

转载 作者:行者123 更新时间:2023-11-30 10:04:32 28 4
gpt4 key购买 nike

swift 2Xcode 7.3

我尝试存储这个:

var someArray = [Class1(id: 1, title: "Titel 2", Something: Class2(somevar: 20))]

使用 NSUSerDefaults:

let arrayData = NSKeyedArchiver.archivedDataWithRootObject(someArray)
NSUserDefaults.standardUserDefaults().setObject(arrayData, forKey: "array")

我的类(class)如下所示:

class Class1 {

var id: Int
var titel: String!
var something: Class2



init(id: Int, titel: String, something: Class2) {
self.id = id
self.titel = titel
self.something = something

}

required init(coder aDecoder: NSCoder) {
self.id = aDecoder.decodeIntForKey("id")
self.titel = aDecoder.decodeStringForKey("titel")
???
}

func encodeWithCoder(aCoder: NSCoder) {
aCoder.encodeObject(id, forKey: "id")
aCoder.encodeObject(titel, forKey: "titel")
???
}


class Class2: Class1
{

var somevar: Int

init(setback: Int) {
self.somevar = somevar
}

}

我需要在这些类中添加什么?

(必须添加一些更多细节;但我认为这是不言自明的)

最佳答案

使用 @FLX 代码示例并确保对象树中的每个对象也符合 NSCoding。

关于swift - 将具有嵌套自定义类的自定义类数组存储到 standardUserDefaults,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36821567/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com