初歩的な実験としておみくじの実験
問題だったところは、
result = Int(arc4random_uniform(5))の部分で Cannot convert value of type 'UInt32' to expected argument type 'String'となったこと。
やりたかった流れとしては
1インターフェース上のボタンを押す 2swich内の整数を乱数で出して条件分岐させる 3インターフェース上のanswerLabelで結果を表示させる。
Swift
class ViewController: UIViewController {
@IBOutlet weak var answerLabel: UILabel!
@IBOutlet weak var errorLabel: UILabel!
var anwser: String!
override func viewDidLoad() {
super.viewDidLoad()
}
// おみくじを引く関数
@IBAction func buttomPressed(sender: UIButton) {
var result: Int
result = Int(arc4random_uniform(5)){
errorLabel.text = ""
switch result {
case 0:
answer = "大吉"
answerLabel.text = answer
case 1:
answer = "吉"
answerLabel.text = answer
case 2:
answer = "中吉"
answerLabel.text = answer
case 3:
answer = "小吉"
answerLabel.text = answer
case 4:
answer = "凶"
answerLabel.text = answer
default:
println("エラー")
}
}
}
}
解決手段としては
1、 result = Int(arc4random_uniform(5)){の「{}」の部分を削除 2、var answerを削除してanswerLabelに直接”運勢”を書き込むことで解決
そもそもanswerの変数なんていらなかった。
ついでに各switchに入っているanswerも削除すると問題解決
なんとかなりました。