【问题标题】:Cannot get the dictionary from NSUserDefaults as saved format无法从 NSUserDefaults 获取字典作为保存格式
【发布时间】:2015-09-29 15:48:49
【问题描述】:

我想从NSUserDefaults 获取一个快速字典作为我之前保存的格式。我已经将字典保存为[String:String] 格式,但是当我使用dictionaryForKey(key) 方法获取字典时,我得到了[String:AnyObject]?。如何将[String:AnyObject]? 转换为[String:String] 或如何获取正确格式的字典?

保存到NSUserDefaults

var tasks: Dictionary<String,String> = [:]
let defaults = NSUserDefaults.standardUserDefaults()
let key = "key"
defaults.setObject(tasks, forKey: key)
defaults.synchronize()

NSUserDefaults获取

let defaults = NSUserDefaults.standardUserDefaults()
let key = "ananZaa"
let incomingArray = defaults.dictionaryForKey(key)

【问题讨论】:

    标签: swift dictionary nsuserdefaults


    【解决方案1】:

    如果您已使用默认值注册它,因此它永远不会是 nil,只需将其向下转换为正确的类型

    let defaults = NSUserDefaults.standardUserDefaults()
    let key = "ananZaa"
    let incomingDictionary = defaults.objectForKey(key) as! Dictionary<String,String>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-12
      • 1970-01-01
      • 2015-06-15
      • 1970-01-01
      • 1970-01-01
      • 2016-08-15
      • 1970-01-01
      相关资源
      最近更新 更多