我有一个应用程序内mulitplie视图控制器,其在游戏中表示不同层次..保存数据从多个视图控制器一个标签
ViewController.swift SecondViewController.Swift等
在各不同的级别有几个按钮,1是正确的答案,2是不正确的。每个视图控制器我也有的标签,更新按钮内的用户的分数......在
@IBAction func buttonCorrect(_ sender: UIButton)
{
cScore +=1
aScore +=1
correctScore.text = NSString(format: "%i", cScore) as String
attemptScore.text = NSString(format: "%i", aScore) as String
}
@IBAction func buttonIncorrect(_ sender: UIButton)
{
cScore +=0
aScore +=1
correctScore.text = NSString(format: "%i", cScore) as String
attemptScore.text = NSString(format: "%i", aScore) as String
}
如何保存这个水平产生的数据/数量和携带它交给SecondViewController.swift?
其目的是为了能够在游戏结束时保存数据,并用它来绘制用户在问题上有多少次尝试与他们拥有的正确分数的实际数量的关系图。
这很好,但每次我到了下一个viewcontroller的aScore和cScore预设为0,然后当我点击一个按钮,他们更新?有没有办法让它们与前一个viewController的值相等? –
嗨。我编辑了解决方案并将Level 2控制器的cScore和aScore更改为var cScore:Int!和var aScore:Int!以防止他们违约0.让我知道这是否有效。 – gwinyai
Hi @gwyinyai在第二个视图控制器中,您将以下代码更改为: var aScore = 0 to var aScore:Int! 它提出了以下错误消息,它说: aScore + = 1 二元运算符'+ ='不能应用于'Int!'类型的操作数和'Int' –