我正在做一个简单的游戏,我想实现一个计分表,保存分数,并显示在主菜单的“高分”部分后,玩一轮。基本上,我现在拥有的是一个变量var Score: Int,它包含一个整数,这就是游戏中用来跟踪比分的东西,但是我想在主菜单中按降序保存5-10的最高分数。对于如何简单地做到这一点,有什么想法吗?
发布于 2022-06-07 07:06:02
对于像您这样简单的任务,我将从UserDefaults开始。
将最高分数存储在排序数组中,然后使用UserDefaults.standard。
为了保存分数:
let highScores = [100, 42, 16, 10, 2]
UserDefaults.standard.set(highScores, forKey: "highScores")把分数读回来:
if let highScores = UserDefaults.standard.object(forKey: "highScores") as? [Int] {
print(highScores)
}请注意,如果用户从设备中删除应用程序,用户默认内容将丢失。
如果您的数据结构变得更加复杂,UserDefaults可能不再是最好的选择,在这种情况下,请查看Core或其他持久性框架。
https://stackoverflow.com/questions/72526425
复制相似问题