如何在swift中的视图控制器之间传递Intergers

时间:2016-05-27 16:33:02

标签: swift uiviewcontroller

这是我的代码而且无效。 LightOrDark和LightDark是整数,当应用程序更改视图时应该相等。

 override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if (segue.identifier == "LightSegue") {
        if let MinigameView = segue.destinationViewController as? MinigameView {
       self.LightOrDark = MinigameView.LightDark
        }

    }
}

3 个答案:

答案 0 :(得分:0)

这是错误的:self.LightOrDark = MinigameView.LightDark。将其更改为: MinigameView.LightDark = self.LightOrDark

答案 1 :(得分:0)

您需要设置目标viewcontroller属性

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    guard let destVc = segue.destinationViewController as? MinigameView else {
       return
    }
    destVc.LightOrDark = self.LightDark
}}

答案 2 :(得分:0)

self.LightOrDark = MinigameView.LightDark此语句将MinigameView.LightDark设置为当前班级的LightOrDark

您需要设置LightDark MinigameView,因此您的代码应该是,

   MinigameView.LightDark = self.LightOrDark

你应该遵循命名标准。变量或实例名称应以小写字母而不是大写字母开头。

因此,您的实例名称应为lightOrDark and minigameView,而不是LightOrDark and MinigameView

希望这会有所帮助:)