我一直在试图将一个类型为[Int:String]的字典保存到NSUserDefaults中,它曾经很好,但最近不会。当调用保存方法并且从不恢复时,macOS程序卡住(使用彩虹加载程序)。Swift - macOS程序在将字典保存到NSUserDefaults时被卡住
因为我之前可以做到这一点,我怀疑这可能与NSUserDefaults存储在我的mac上的位置有关(我不知道它在哪里)。
这里是我的代码:
let defaults = NSUserDefaults.standardUserDefaults()
var dict: [Int: String] = [:]
dict[1] = "123512"
dict[2] = "1231232"
dict[3] = "112512"
dict[4] = "1212081"
print(dict)
defaults.setObject(dict, forKey: "cameraOrder")
目前,objectForKey: “cameraOrder” 是空的,我做到了通过调用 “默认删除[包ID]” 在终端上。
在此先感谢您的帮助。
附加信息
我认为这可能问题可能有一些做的一个字典类型的保存。如果我运行这个代码:
defaults.setObject("12", forKey: "cameraOrder")
print(defaults.objectForKey("cameraOrder"))
它完美的工作。
出人意料的是,即使我保存类型的词典[字符串:字符串]它的工作原理(更改密钥1为“1”)
你如何获取从您选择NSUserDefaults的 –
defaults.objectForKey(“cameraOrder”)词典,但我的问题是不取,因为只是储蓄使得程序永远卡住。 –
@EricAya请你看看答案是否正确。 –