gpt4 book ai didi

ios - 保存高分

转载 作者:行者123 更新时间:2023-11-28 08:13:39 26 4
gpt4 key购买 nike

我在这里看到很多线程都在询问这个问题,我也关注了一些线程,但在应用程序被终止并重新打开后似乎无法保存它。至于从游戏到游戏的工作(不终止应用程序),它会适本地保存。

这是我的 highscore 变量的实例。我省略了一些样式和显示高分的位置。我有一种感觉,这与声明有关?

//delarations
var highScore = Int()
var highScoreLabel = UILabel()

//post game
if score > highScore {
saveHighScore()
scoreIsHigher = true
}

//and the function
func saveHighScore() {
let highScoreData = UserDefaults.standard
highScore = score
highScoreData.setValue(highScore, forKey: "highScore")
}

编辑:我在赛前状态中遗漏了这部分代码,这似乎是触发数据加载的原因。

let highScoreData = UserDefaults.standard
if (highScoreData.object(forKey: "highScore") != nil) {
highScore = highScoreData.value(forKey: "highScore") as! NSInteger!
}

最佳答案

使用set(_:forKey:),而不是设置setValue(_:forKey:)

setValue(_:forKey:) 是一个 KVO 方法,不是保存到 UserDefaults 的方法。

您需要在用户获得新的高分后立即将高分更新到 UserDefaults,并在启动时从 UserDefaults 读取它。

关于ios - 保存高分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43058558/

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