gpt4 book ai didi

ios - 如何将自定义类快速保存到 NSUserDefaults 中?

转载 作者:行者123 更新时间:2023-11-30 13:46:47 24 4
gpt4 key购买 nike

我创建了一个名为 test 的自定义类。我创建了一个名为“游戏”的变量等于测试。我尝试将“游戏”保存到 NSUserDefaults 并尝试打印“游戏”中的值。运行该项目后,我收到错误:“Thread 1:signal SIGABRT”。如何将自定义对象保存到 NSUserDefaults 而不出现此错误?

这是我的类(class):

class Test {
var boolean = false
var int = 1
var arr = ["one": 1]
}

这是我的保存代码:

    let defaults = NSUserDefaults.standardUserDefaults()

let game = Test()

game.arr = ["two": 3]
game.hi = true
game.int = 100

defaults.setObject(game, forKey: "SG")

let gameSet = defaults.objectForKey("SG")! as! Test

print(gameSet.int)
print(gameSet.boolean)
print(gameSet.arr["one"])

这一切都在viewDidLoad方法中。不包括测试类。

最佳答案

From the documentation:

The value parameter can be only property list objects: NSData, NSString, NSNumber, NSDate, NSArray, or NSDictionary.

您需要考虑使用 NSKeyedArchiver 来代替自定义对象。

关于ios - 如何将自定义类快速保存到 NSUserDefaults 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34830892/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com