相关疑难解决方法(0)

如何将字典字典保存到 UserDefaults [Int:[Int:Int]]?

我正在尝试将字典的字典保存到 UserDefaults 中。

我可以这样保存字典:

var dict = [Int:[Int:Int]]()
dict[1] = [4:3]
dict[10] = [5:10]

let data = try 
NSKeyedArchiver.archivedData(withRootObject: dict, requiringSecureCoding: false)
UserDefaults.standard.set(data, forKey: "dict")
Run Code Online (Sandbox Code Playgroud)

但是当我尝试检索它时:

if let data2 = defaults.object(forKey: "dict") as? NSData {
let dict = NSKeyedUnarchiver.unarchivedObject(ofClasses: [Int:[Int:Int]], from: data2)
print(dict)
}
Run Code Online (Sandbox Code Playgroud)

我收到错误:无法将类型 '[Int : [Int : Int]].Type' 的值转换为预期参数类型 '[AnyClass]'(又名 'Array')

有没有办法在 UserDefaults 中存储 [Int:[Int:Int]] 字典?或者我必须使用其他方法?

dictionary ios swift

1
推荐指数
1
解决办法
999
查看次数

标签 统计

dictionary ×1

ios ×1

swift ×1