【发布时间】:2015-05-19 01:40:41
【问题描述】:
我在我的 XCode 项目中使用两个视图控制器。我将一个变量从第一个 View Controller 传递到第二个。而且我不断收到这个 Swift Complier Error: "Class SecondViewController has no initializers" Fix-it > Stored property 'XScore' without initial value 防止合成初始化器。
这就是我在 FirstViewController 中传递变量的方式:
override func prepareForSegue(Segue: UIStoryboardSegue, sender: AnyObject?) {
var Destination = (Segue.destinationViewController as SecondViewController)
Destination.XScore = Score
}
这是我的第二个视图控制器的(一部分):
class SecondViewController: UIViewController {
@IBOutlet weak var XScoreLabel: UILabel!
var XScore:Double = 0.00
我已经尝试了许多不同的方法来初始化这个属性,即使它对我来说似乎是正确的。
提前致谢。
【问题讨论】:
-
您将
Segue.destinationViewController转换为SecondViewController,但您的“第二个视图控制器”被称为ShopViewController? -
你能告诉我们
Score是如何创建的吗? -
Score 是一个双变量,从 0.00 开始,每次我按下按钮时,它都会加 1。(Score += 1.00)
-
你确定
Score是Double吗?您不能在Doubleafaik 上使用++。 -
这不是问题,即使我删除它问题仍然存在
标签: ios iphone xcode swift uiviewcontroller