gpt4 book ai didi

ios - 更新变量的 NSUserDefaults

转载 作者:行者123 更新时间:2023-11-29 00:54:38 25 4
gpt4 key购买 nike

我正在尝试更新一个人在我的游戏中跳跃的总次数,但我遇到了一些问题。以下是那场比赛发生的跳跃次数和加时赛发生的跳跃次数的变量。

var timesJumped: Int = 0
var totalTimesJumped: Int = 0

我有一个用于 NSUserDefaults 的变量,所以即使应用程序关闭或关闭,它也会记住多少次。

var timesJumpedTotal = NSUserDefaults.standardUserDefaults().integerForKey("times jumped")

如果 timesJumpedTotal 应该始终运行并且为真,我有这段代码要运行,所以当我尝试将文本设置为此 timesJumpedTotal 时,我得到一个空白文本域。这是有原因的吗?

if timesJumpedTotal >= 0 {
totalTimesJumped = totalTimesJumped + timesJumped
NSUserDefaults.standardUserDefaults().setInteger(totalTimesJumped, forKey: "times jumped")
}

在我想显示此统计信息的 SKScene 中,我有这段代码,它将节点的文本设置为 totalTimesJumped 的文本:

let timesJumped = NSUserDefaults.standardUserDefaults().integerForKey("times jumped")
totalTimesjumped = childNodeWithName("TotalTimesJumped") as! SKLabelNode
totalTimesjumped.text = "\(totalTimesjumped)"

我不确定为什么会这样,有人知道吗?

我刚才也试过了。

totalTimesJumped = totalTimesJumped + timesJumped
timesJumpedTotal = totalTimesJumped
NSUserDefaults.standardUserDefaults().setInteger(timesJumped, forKey: "high score")
NSUserDefaults.standardUserDefaults().synchronize()

最佳答案

尝试改变

if timesJumpedTotal >= 0 {
totalTimesJumped = totalTimesJumped + timesJumped
NSUserDefaults.standardUserDefaults().setInteger(totalTimesJumped, forKey: "times jumped")
}

收件人:

if timesJumpedTotal >= 0 {
totalTimesJumped = timesJumpedTotal + timesJumped
NSUserDefaults.standardUserDefaults().setInteger(totalTimesJumped, forKey: "times jumped")
}

看来,当您从 NSUserDefaults 获取数据时,您实际上从未使用它来增加和重写总数。不那么相似地命名变量将有助于解决问题。可能还有其他几个地方需要更改

关于ios - 更新变量的 NSUserDefaults,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37739253/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com