之前我曾经多次使用过Userdefaults,但是在这种情况下似乎无法弄清楚即使是这么简单的情况也会导致崩溃的原因。
目标:UserDefaults.standard.set一个字典数组值的字典
struct UDKey {
static let activityCount = "ActivityCount"
}
class MyClass {
let defaults = UserDefaults.standard
func initialize() {
let years = [ 2017: [[1:2],
[2:4],
[3:6],
[4:8],
[5:10],
[6:12],
[7:14],
[8:16],
[9:17],
[10:18],
[11:19],
[12:20]]]
if defaults.value(forKey: UDKey.activityCount) == nil {
defaults.set(years, forKey: UDKey.activityCount) // Crash - lldb
}
}
}
我尝试成功设置其他值,例如简单的整数和字符串。但是这个带有字典数组值的字典存在问题 设置值时,UserDefaults崩溃的原因可能是什么。