var numberOfPeople = 1 //get from host
var numberAtCounter = 0
func showNames() {
if peopleInMatch[numberAtCounter] == yourPeerID { //change to peopleinmatcheveryone
if numberOfPeople == 0 {
print("hoho")
personName.isHidden = true
connect.isHidden = false
connect.setTitle("PRESS READY", for: UIControlState.normal)
//change label to ready
} else {
numberAtCounter += 1
numberOfPeople -= 1 // buggy?
print("\(numberAtCounter)")
showNames()
}
} else {
personName.text = "TAKE PHOTO OF \(peopleInMatch[numberAtCounter])'s COLOR"
numberAtCounter += 1
if numberOfPeople <= 0 {
personName.isHidden = true
connect.isHidden = false
connect.setTitle("PRESS READY", for: UIControlState.normal)
//change label to ready
}
numberOfPeople -= 1 //buggy maybe fixed
}
}
if peopleInMatch [numberAtCounter] == yourPeerID行でスレッド1:EXC_BREAKPOINTエラーが発生しました。私は、インデックスがどういう意味であるのか、あるいは潜在的に間違っているのかを完全には理解していませコードは1回実行され、関数はそれ自身を呼び出し、2回目には上記の行を分解します。私はすべての変数をチェックしていますが、どれもnillではありません。何か案は?スウィフトの範囲外のインデックスのインデックスが間違っています
チェック「peopleInMatch」配列サイズを。 peopleInMatch [1]は存在しないようです。 –
'numberAtCounter'が' peopleInMatch'配列のオブジェクトの数以上の場合、 "index out of range"エラーのためにクラッシュします。あなたはそれを避ける必要があります。 – rmaddy