在调用Swift函数时缺少参数#1的参数

时间:2017-09-20 23:23:23

标签: ios swift

一般来说,Swift和编码都是新手。 只需要一些帮助让我的随机选择器工作。我试图让它选择1到9之间的随机数,并检查该数字是否与您点击的按钮相同。

enter image description here

3 个答案:

答案 0 :(得分:0)

我猜你是否试图将随机数与点击按钮上的标题(显示的数字)进行比较?

如果是这样,请在if语句上方添加以下行:

guard let buttonInt = sender.titleLabel?.text.flatMap(Int.init) else { return }

然后,将if语句更改为:

if randomNumber == buttonInt {

    // do what you want if it matches

} else {

    // handle no match
}

//编辑:为flatMap版本推荐到亚历山大

答案 1 :(得分:0)

请检查:

let rand = Int(arc4random_uniform(9))
guard let buttonInt = Int(sender.currentTitle!) else { return }
if rand == buttonInt {

} else {

}

答案 2 :(得分:-1)

我不知道我是否理解你想做什么,但如果你想检查随机数是否等于按钮的标签,你需要这样做:

if randomNumber == sender.tag {
    //your code
}

在布尔操作中,您必须使用==而不是=

您需要在标签中设置按钮的编号。像这样:

button1.tag = 1
button2.tag = 2 
button3.tag = 3

从您的函数中生成随机数的代码:

var random = 0 

override func viewDidLoad(){
    super.viewDidLoad()
    random = Int(arc4random_uniform(9))

}