@IBAction func endTurn(sender: UIButton) {
let index: Int = Int (arc4random_uniform(UInt32(coins.count)))
var i = Int(arc4random_uniform((3)))
for i; i < 3; i++ {
coins[i].hidden = true
coins.removeAtIndex(i)
println(i)
}
}
我有21枚硬币。这是一组按钮(@IBOutlet var coins:[UIButton]!)。当我按“endTurn”时,硬币就隐藏起来了。但当我有3个或更少的硬币时,我会得到致命的错误(行:coins[i].hidden=true)。
我需要做什么?
谢谢。。。
最佳答案
您试图访问超出界限的数组索引。因此,添加一个i
在数组范围内的检查应该可以防止崩溃。
if(i < coins.length) {
coins[i].hidden = true
coins.removeAtIndex(i)
}
包含3个元素[0,1,2]的数组从索引0-2开始(数组的第一个索引为0)。
关于ios - Swift按钮隐藏致命错误:数组索引超出范围,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31727256/