如何在NSUserDefault swift中保存/检索嵌套字典?

时间:2016-08-11 19:35:18

标签: arrays swift dictionary save nsuserdefaults

我正在构建一个应用程序,用户可以在其中创建UITableviewcell,这将导致用户可编辑的不同UIViewController。我保存用户信息:

level1Dictionary = [String : [String : String]]() 如果用户将UITableViewCell Dog命名为viewController并设置level1Dictionary[dog] = [String : String](),我现在将字典保存在NSUserdefaults中NSUserDefaults.StandardUserDefaults()setObject(level1Dictionary, forKey: "level1Dictionary")一切正常。

当我重新启动应用程序并按下名为dog的customCreate UITAbleViewCell时,我想要检索用户在level1Dictionary = [Dog : [String : String]]中存储的信息。 我在viewdidload中检索信息:level1Dictionary = NSUserDefault.standardUserDefaults().objectForKey("level1Dictionary") as? [String : String] ?? [String : String]()但这会返回错误:无法转换类型为[String:String]的值?预期的参数类型[String:[String:String]]?

1 个答案:

答案 0 :(得分:1)

试试这个:

NSUserDefault.standardUserDefaults().objectForKey("level1Dictionary") as? [String : [String : String]]?? [String : [String : String]]()