사용자가 여러 셀을 선택하여 탭을 선택해야하는 앱을 만들고 있습니다. 셀을 탭하면 .Checkmark 액세서리 항목이 나타납니다. 어떤 이유하지만 나는 시도하고 그 VC에 응용 프로그램 충돌을 얻고 (체크 [indexPath.row] 경우!)가 나는 8 번째 줄에 다음과 같은 오류 메시지를받을 때마다 : indexPath swift 범위를 벗어나는 색인
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
let cell: InstrumentTableCell! = tableView.dequeueReusableCellWithIdentifier(identifier) as? InstrumentTableCell
cell.configurateTheCell(recipies[indexPath.row])
if !checked[indexPath.row] {
cell.accessoryType = .None
} else if checked[indexPath.row] {
cell.accessoryType = .Checkmark
}
return cell
}
및
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath)
{
tableView.deselectRowAtIndexPath(indexPath, animated: true)
if let cell = tableView.cellForRowAtIndexPath(indexPath) {
if cell.accessoryType == .Checkmark {
cell.accessoryType = .None
checked[indexPath.row] = false
} else {
cell.accessoryType = .Checkmark
checked[indexPath.row] = true
}
}
}
좋아요, 당신의'checked' 메소드는 어떻게 생겼습니까? – pbodsk
pbodsk 체크 된 메소드를 추가하기 위해 질문을 업데이트했습니다 :) – zach2161
아 ... 좋아요, 그래서'checked'는 행을 체크했는지 여부를 저장하는 배열입니다, 맞습니까? – pbodsk