【发布时间】:2016-05-31 02:45:40
【问题描述】:
我尝试了一个不起作用的答案:Swift Saving user NSUser Defaults。
我的问题是我想保存:var myDict = [Int:String]() 永久使用 NSUser 默认值。
我的代码是:
let userDefaults = NSUserDefaults.standardUserDefaults()
@IBAction func AddOneWord(sender: AnyObject) {
if newWord.text != "" {
myDict.updateValue(newWord.text!, forKey: 1)
self.Word1Dictionnary.text = myDict[1]
userDefaults.setValue(myDict, forKey: "1")
userDefaults.synchronize()
}
}
问题是我在单击我的应用程序(正在运行)上的按钮时出现此错误:Thread 1 : Signal SIGABRT。
【问题讨论】:
-
能否请您显示错误内容?谢谢!
-
在我的帖子中,链接“Thead 1 : Signal SIGABRT”并没有说其他任何内容。
-
你应该在底部的调试日志中得到一些东西。它说什么?
-
您有 2 个选项:将字典声明为
[String:String]或使用符合NSCoding协议的自定义类。并且不要使用setValue:forKey和synchronize()。前者语法为setObject:forKey,后者不需要。 -
你可以使用任何东西,只要它是一个字符串。但是为什么不使用字符串表示
"1"而不是整数值1?
标签: swift nsuserdefaults sigabrt