swift - 使用 Sprite Kit swift 保存和更新高分

标签 swift sprite-kit

我一直在尝试使用 swift 和 sprite 套件保存和更新高分,但我的代码似乎不起作用。这是代码的图片。有人可以帮忙吗?

enter image description here

最佳答案

您的代码中似乎有几个错误,最值得注意的是您似乎每次都将保存的高分重置为零。尝试这样的事情:

if defaults.objectForKey("highScore") == nil {
        defaults.setInteger(score, forKey: "highScore")
    } else {
        if score > defaults.integerForKey("highScore") {
            defaults.setInteger(score, forKey: "highScore")
        }
    }

您必须调整上面的代码以适合您的特定目的,并确保所有变量都得到适当的定义和设置,但这是我检查和设置 NSUserDefaults 高分的标准方法,它对我有用。

实际上,我只是想到了一个更短的语法:

if defaults.objectForKey("highScore") == nil || score > defaults.integerForKey("highScore") {
    defaults.setInteger(score, forKey: "highScore")
}

关于swift - 使用 Sprite Kit swift 保存和更新高分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37405017/

相关文章:

ios - swift 中的 CAGradientLayer 相当于什么?

ios - 序列化 NSDictionary 时出错

Swift UTC 时区不是 UTC

ios - 将数据从一个 TableView 传递到另一个 TableView

swift - 使节点以相同的速度从不同的起点移动到终点

ios - 如何在 SKView 之上添加 SCNView

swift - 为什么要展开一个不能为 nil 的变量?

ios - SKSpriteNode 出现在 iOS 8 中,而不是出现在 iOS 7 中

swift - 将相机置于 swift spritekit 中的节点中心

ios - SKSpriteNode 之间出现奇怪的间隙 - swift