在SpriteKit中永久保存Int

时间:2016-05-26 15:34:43

标签: sprite-kit int save

我试图创建一个游戏,并且需要能够保存一个数字并检索它。我已经找到了另一个关于此的教程,但它已经过时并且一直出错:

//To save highest score
var highestScore:Int = 20
NSUserDefaults.standardUserDefaults().setObject(highestScore, 
forKey:"HighestScore")
NSUserDefaults.standardUserDefaults().synchronize()

//To get the saved score
var savedScore: Int = 
NSUserDefaults.standardUserDefaults().objectForKey("HighestScore") as Int
println(savedScore)

更多细节:如果有帮助的话,可以保存高分(我不认为这样做)。

欢迎任何帮助,谢谢。

2 个答案:

答案 0 :(得分:1)

NSUserDefaults.standardUserDefaults().setInteger(20, forKey: "HighestScore")

let valueOrZeroIfNotSet = NSUserDefaults.standardUserDefaults().integerForKey("HighestScore")

答案 1 :(得分:0)

NSUserdefaults是一个非常有用的工具,您可以永久地创建可随时随地读取和写入的可变变量。下面简要说明如何使用它们。

let saves = NSUserdefaults.standardUserDefaults()

您需要声明NSUserdefaults才能开始,现在这是您将存储数据的位置。想象一下它作为一个书架,现在它是空的,但你可以填写所有形式的信息。

现在我们已经拥有了我们的书架,我们可以开始用书籍填充它们,这些书籍可以是诸如整数和字符串之类的东西。

如果我们想将我的名字(彼得)存放在一本书中。在架子上,我们首先要创建这本书,并给它起一个名字。这本书的名字叫做" key"。密钥必须是唯一的字符串。因为我存储我的名字,密钥将是" myName"。现在我们知道了写信的关键,现在让我们用书填写信息(这是我的名字)。

saves.setString("Peter", forKey: "myName")

现在我们在书架上写了一本书,上面写着我们的名字。

我们可能希望在需要的时候阅读这些信息!我们可以通过以下方式轻松访问我们书架上的书籍:

saves.stringForKey("myName")

现在我们确实需要密钥(书籍名称),以便找到合适的信息书。

对于NSUserdefaults而言,这几乎就是它。