如何使用 NSUserDefaults 保存和 return 数据

How to use NSUserDefaults to save and return data

func gameDidBegin(tetro: Tetro) {
    levelLabel.text = "\(tetro.level)"
    scoreLabel.text = "\(tetro.score)"

    //hiscoreLabel.text = "\(tetro.score)"

    var userDefaults = NSUserDefaults.standardUserDefaults()

    var score: Int = 0 `enter code here`{
        didSet {
            hiscoreLabel = (self.scoreLabel.text = "\(tetro.score)")
        }
    }

    scene.tickLengthMillis = TickLengthLevelOne

    // The following is false when restarting a new game
    if tetro.nextShape != nil && tetro.nextShape!.blocks[0].sprite == nil {
        scene.addPreviewShapeToScene(tetro.nextShape!) {
            self.nextShape()
        }
    } else {
        nextShape()
    }
}

如果我能得到一些关于如何保存 scoreLabel.text 并将其放在一个名为 hiscoreLabel 的单独 @IBOutlet 上使用 NSUserDefaults 来存储数据的指导,我将不胜感激。

基本上,我想使用 NSUserDefaults 并用先前获得的最高分数不断更新最高 hiscore。

写入数据:

let prefs = NSUserDefaults.standardUserDefaults() prefs.setDouble(1.0, forKey: "bar")

// iOS 7岁及以下

prefs.synchronize()

读取数据:

let prefs = NSUserDefaults.standardUserDefaults() prefs.doubleForKey("bar")

删除数据:

let prefs = NSUserDefaults.standardUserDefaults() prefs.removeObjectForKey("bar")

// iOS 7岁及以下

prefs.synchronize()