테이블 (tableview1)에서 선택된 행의 수를 세는 다음 코드가 있습니다.UITableView에서 선택된 행의 수를 계산하십시오.
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell * cell = [tableView cellForRowAtIndexPath:indexPath];
if (!cell) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];
}
int count = 0;
selectedindex1 = indexPath.row;
for (NSIndexPath *indexPath in tableview1.indexPathsForSelectedRows) {
count = count + 1;
}
rowcount = count;
}
여기서, selectedindex1 및 rowcount는 정수 변수입니다.
이 코드는 사용자가 이미 선택된 행을 선택하지 않는다고 가정하면 작동합니다. 이러한 작업을 수행하면 didSelectRowAtIndexPath 메소드가 트리거되지 않으므로 응용 프로그램에서 선택한 행을 올바르게 말할 수 없습니다. 선택한 행 수를 계산하는 더 좋은 방법이 있습니까?
도움 주셔서 감사합니다.
행이 이미 선택되어있는 경우 다시 선택할 수 없습니까? 가능한 경우에도 선택한 행의 수에는 영향을 미치지 않습니다. 행 개수 변수로 정확히 무엇을하려합니까? – paulmelnikow
언급하지 못했지만 '다중 선택'이 활성화되었습니다. 죄송합니다 ... –
충분히 명확했습니다. 나는 당신이 선택뿐만 아니라 선택 취소에 대해서 행동하기를 원한다는 것을 이해하지 못했습니다. 어떻게 행 개수 변수를 사용합니까? 왜 콘센트를 사용하여 tableview에 대한 참조를 유지하고 카운트가 필요할 때 코드에서'-indexPathsForSelectedRows'를 호출합니까? – paulmelnikow