我制作了一个应用程序,我在其中保存了一个标签,我可以在我的应用中将其上下移动一个数字。但是,如果我丢失了我的应用程序并将其重新打开,如果我再次将标签重新启动,则重新设置为零并转到一个标签。这是因为我必须将变量值设置为零。这是我的代码:
@IBOutlet var goal: UILabel!
@IBAction func player1button(sender: AnyObject)
{
NSUserDefaults.standardUserDefaults().setValue(goal.text!, forKey:"firstGoal")
}
var goal1 = 0
@IBAction func goalUp(sender: AnyObject)
{
goal1++
goal.text = "\(goal1)"
}
override func viewDidLoad()
{
super.viewDidLoad()
goal.text = (NSUserDefaults.standardUserDefaults().objectForKey("firstGoal") as? String)
}
我保存目标号码,然后在文本中稍后再调用它。请告诉我一种解决方法,以便它只是添加到之前的数字。
答案 0 :(得分:0)
在viewDidLoad()中添加
goal1 = Int((NSUserDefaults.standardUserDefaults().objectForKey("firstGoal") as? String)!)
这将设置用于在应用加载时将目标跟踪到正确值的int变量。目前,您只是将文本标签设置为正确的值。
答案 1 :(得分:0)
或者您可以简单地将var goal1
设置为全局变量,就在导入之后和class关键字之前,以防您在下次打开应用程序本身时不需要保留数据