我正在尝试保存" highScore"使用SpriteKit关闭应用程序后持续存在的整数。
那就是它。无论新分数是否高于保存的分数,我最终都会在一个屏幕上设置一个整数。
据我所知,stackoverflow上已有很多选项,但它们都适用于低于3.0的Swift版本。他们使用了许多方法和内置功能,作为初学者我不会理解。在尝试将所有这些选项转换为Swift 3.0并失败后,我希望有人可以向我展示一些示例代码如何执行此操作。
我很乐意回答任何进一步的问题。
答案 0 :(得分:3)
您可以使用UserDefaults
类来实现此目的。
如果你有任何类型的GameManager
单例,你可以定义一个保存并从UserDefaults
读取的计算变量:
var highScore: Int {
get {
return UserDefaults.standard.integer(forKey: "highScore")
}
set {
UserDefaults.standard.set(newValue, forKey: "highScore")
}
}