Ios 如何保持总得分的多少
我想记录下每个人在比赛中的总得分。例如,如果一个人玩游戏25次,每次得分100分,那么他们的总分将为2500分。这是我在游戏中用来增加分数的方法:Ios 如何保持总得分的多少,ios,xcode,swift,nsuserdefaults,Ios,Xcode,Swift,Nsuserdefaults,我想记录下每个人在比赛中的总得分。例如,如果一个人玩游戏25次,每次得分100分,那么他们的总分将为2500分。这是我在游戏中用来增加分数的方法: let waitScore = SKAction.waitForDuration(1.0) //add score every second let incrementScore = SKAction.runBlock ({ ++self.score self.scoreLabel.text = "\(self.score)"}) /
let waitScore = SKAction.waitForDuration(1.0) //add score every second
let incrementScore = SKAction.runBlock ({
++self.score
self.scoreLabel.text = "\(self.score)"}) //update score label with score
self.runAction(SKAction.repeatActionForever(SKAction.sequence([waitScore,incrementScore])))
总分将显示在不同的场景中,因此我想我需要使用NSUser默认值保存总分,将其加载到正在计算分数的游戏场景中,并以某种方式将加载的总分添加到当前分数中,然后保存总分?!我希望这是有道理的 写:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setInteger:10 forKey:@"score"];
[defaults synchronize];
阅读:
写:
阅读:
写:
阅读:
写:
阅读:
- 在类之外的某个地方定义一个便利常数
totalScoreKey
let totalScoreKey = "totalScore"
- 在AppDelegate类中,注册键
,例如在totalScore
方法中init
override init() { let userDefaults = NSUserDefaults.standardUserDefaults() let defaultValues = [totalScoreKey: 0] userDefaults.registerDefaults(defaultValues) }
读取并返回总分。getTotalScore()
该方法可以在任何类中实现func getTotalScore() -> Int { let userDefaults = NSUserDefaults.standardUserDefaults() return userDefaults.integerForKey(totalScoreKey) }
从用户默认值读取总分,并在updateTotalScore()
中添加值,然后将值写回。self.score
该方法必须在包含变量score
func updateTotalScore() { let userDefaults = NSUserDefaults.standardUserDefaults() var totalScore = userDefaults.integerForKey(totalScoreKey) totalScore += self.score userDefaults.setInteger(totalScore, forKey: totalScoreKey) }
- 在类之外的某个地方定义一个便利常数
totalScoreKey
let totalScoreKey = "totalScore"
- 在AppDelegate类中,注册键
,例如在totalScore
方法中init
override init() { let userDefaults = NSUserDefaults.standardUserDefaults() let defaultValues = [totalScoreKey: 0] userDefaults.registerDefaults(defaultValues) }
读取并返回总分。getTotalScore()
该方法可以在任何类中实现func getTotalScore() -> Int { let userDefaults = NSUserDefaults.standardUserDefaults() return userDefaults.integerForKey(totalScoreKey) }
从用户默认值读取总分,并在updateTotalScore()
中添加值,然后将值写回。self.score
该方法必须在包含变量score
func updateTotalScore() { let userDefaults = NSUserDefaults.standardUserDefaults() var totalScore = userDefaults.integerForKey(totalScoreKey) totalScore += self.score userDefaults.setInteger(totalScore, forKey: totalScoreKey) }
- 在类之外的某个地方定义一个便利常数
totalScoreKey
let totalScoreKey = "totalScore"
- 在AppDelegate类中,注册键
,例如在totalScore
方法中init
override init() { let userDefaults = NSUserDefaults.standardUserDefaults() let defaultValues = [totalScoreKey: 0] userDefaults.registerDefaults(defaultValues) }
读取并返回总分。getTotalScore()
该方法可以在任何类中实现func getTotalScore() -> Int { let userDefaults = NSUserDefaults.standardUserDefaults() return userDefaults.integerForKey(totalScoreKey) }
从用户默认值读取总分,并在updateTotalScore()
中添加值,然后将值写回。self.score
该方法必须在包含变量score
func updateTotalScore() { let userDefaults = NSUserDefaults.standardUserDefaults() var totalScore = userDefaults.integerForKey(totalScoreKey) totalScore += self.score userDefaults.setInteger(totalScore, forKey: totalScoreKey) }
- 在类之外的某个地方定义一个便利常数
totalScoreKey
let totalScoreKey = "totalScore"
- 在AppDelegate类中,注册键
,例如在totalScore
方法中init
override init() { let userDefaults = NSUserDefaults.standardUserDefaults() let defaultValues = [totalScoreKey: 0] userDefaults.registerDefaults(defaultValues) }
读取并返回总分。getTotalScore()
该方法可以在任何类中实现func getTotalScore() -> Int { let userDefaults = NSUserDefaults.standardUserDefaults() return userDefaults.integerForKey(totalScoreKey) }
从用户默认值读取总分,并在updateTotalScore()
中添加值,然后将值写回。self.score
该方法必须在包含变量score
func updateTotalScore() { let userDefaults = NSUserDefaults.standardUserDefaults() var totalScore = userDefaults.integerForKey(totalScoreKey) totalScore += self.score userDefaults.setInteger(totalScore, forKey: totalScoreKey) }