ios - 选择一行是检查另一行的标记

标签 ios uitableview

我在 iOS 中遇到了一个关于表格 View 的奇怪问题。在表格中,当我点击一行时,我想要显示一个复选标记,它与下面的代码一起工作得很好:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{

    if([tableView cellForRowAtIndexPath:indexPath].accessoryType == UITableViewCellAccessoryCheckmark){
        [tableView cellForRowAtIndexPath:indexPath].accessoryType = UITableViewCellAccessoryNone;
    }else{
        [tableView cellForRowAtIndexPath:indexPath].accessoryType = UITableViewCellAccessoryCheckmark;
    }
}

现在,我的表格有 11 行。当我单击第一行时,复选标记出现在第一行(这很好),但它也出现在第 10 行。当我点击第 2 行时,第 2(这很好)和第 11 行出现。

有人知道这个问题吗?

最佳答案

这样做...

self.tableView.allowsMultipleSelection = YES;

然后当你需要获取所有选中的行时...

NSArray *selectedIndexPaths = [self.tableView indexPathsForSelectedRows];

此数组将包含所有带有复选标记的行。

无需自己在代码中做任何事情。

关于ios - 选择一行是检查另一行的标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24262292/

相关文章:

ios - 我需要 TestFlight 的 iOS 开发者许可证吗

Swift:tableView 中的最后一个单元格在不应该禁用 userInteraction 时被禁用

javascript - iPhone Javascript 确认对话框错误

objective-c - 为什么我没有得到 NSMutableString 属性的这个 getter 和 setter 的异常

ios - 使用支持的 NSFetchedResultsController 展开/折叠 UITableView 部分

ios - 使用 UIWebView 和/或 UITableView 创建下拉效果

uitableview - topLayoutGuide 和 bottomLayoutGuide UIViewController 属性示例

ios - 由于插入 UITableViewAutomaticDimension 返回的单元格很小

ios - 应用程序在设置 IdleTimerDisabled : NO 时直接进入空闲状态

ios - Swift 中仅平滑顶部角度和 ImageView