不能在函数中放置多个命令?

时间:2014-12-14 01:38:37

标签: ios swift

我遇到了IOS swift的问题。它类似于objective-c。我的问题是每当我在视图控制器中运行这段特定的代码时,一切都会出错。我有3个标签和一个按钮。我想单击按钮,让每个标签显示一个随机生成的数字。我尝试过多种方法,比如将标签变量放在函数中,也可以在number.text行中移动。这段代码唯一没有崩溃的时候是我在函数中只有命令,例如number.text = String(arc4random()%6)。

@IBOutlet weak var number: UILabel!
@IBOutlet weak var number1: UILabel!
@IBOutlet weak var number2: UILabel!

@IBAction func button(sender: AnyObject) {

    number.text = String(arc4random() % 6)
    number1.text = String(arc4random() % 6)
    number2.text = String(arc4random() % 6)

}

1 个答案:

答案 0 :(得分:3)

确保number1和number2实际连接到Interface Builder中的项目或以其他方式创建。

看起来它们是零并且您正在尝试编辑其文本属性。

为了测试这个,你可以做这样的事情

@IBAction func button(sender: AnyObject) {
   if (number != nil) {
        number.text = String(arc4random() % 6)
    }

    if (number1 != nil) {
        number1.text = String(arc4random() % 6)
    }

    if (number2 != nil) {
        number2.text = String(arc4random() % 6)
    }
}

只会更改实际创建的项目,以便您可以看到哪些是零,哪些不是

更新了swift 3:

@IBAction func button(sender: AnyObject) {
    number?.text = String(arc4random() % 6)
    number1?.text = String(arc4random() % 6)
    number2?.text = String(arc4random() % 6)
}