我有一个分组的UITableView,想要选择一些行。 我找到了一些方便的代码,我发现它可以选择多行,但是对于一个未分组的视图。
--->
当我选择一行时,它会选择每一部分的这一行。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
if (cell.accessoryType == UITableViewCellAccessoryCheckmark) {
cell.accessoryType = UITableViewCellAccessoryNone;
} else {
cell.accessoryType = UITableViewCellAccessoryCheckmark;
}}
有任何帮助吗?提前谢谢!
答案 0 :(得分:2)
看看 - iPhone: How to allow multiple selection in tabelview for a custom cell?。如果您只是像在代码中那样设置附件类型,则在单元格被回收时(滚动表格时)将不会保留附件。相反,你应该做类似以下的事情 -
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
//... your existing code ...
if(self.selectedIndexPaths && [self.selectedIndexPaths containsObject:indexPath]) //selectedIndexPaths is explained in the link above
cell.accessoryType = UITableViewCellAccessoryCheckmark;
else
cell.accessoryType = UITableViewCellAccessoryCheckmark;
//... your existing code ...
return cell;
}
这样,您可以维护选择的单元格。
HTH,
阿克沙伊
答案 1 :(得分:0)
我认为您已经在视图中使用了多个表格,例如
if(tableView = firstTbl){
}
if(tableView = secondTbl){
}