在 tableview 中,如果选择第 1 行第 1 行,那么为啥还要选择第 1 行第 1 部分?

Posted

技术标签:

【中文标题】在 tableview 中,如果选择第 1 行第 1 行,那么为啥还要选择第 1 行第 1 部分?【英文标题】:In tableview, if select section 1 row 1 then why is second section row 1 selected also?在 tableview 中,如果选择第 1 行第 1 行,那么为什么还要选择第 1 行第 1 部分? 【发布时间】:2018-11-01 05:05:48 【问题描述】:

我使用了带有复选按钮的单元格点击方法。 如果我选择第一部分和第一行,那么它会自动选择第二部分第一行。这意味着如果您选择任何行,那么它将在另一个部分中选择同一行。我不明白为什么。

我还尝试了部分条件 (indexpath.section ==0) 或其他部分条件。我有两个数组,所以我手动取 2 个部分,行将取决于条件。

if(section ==0)  return arra1.count  else  return arr2.count 

之前我遵循this 实现。

【问题讨论】:

分享你的cellForRow & didSelectRow 方法 code 已经在我的问题中提到了代码链接,我没有使用 didselect 方法,我取空了。 @Krishnakushwaha 你应该在这里发布你的代码。我希望您知道如何免费获得他人的帮助。 【参考方案1】:

终于解决了我的问题。我只取两个索引集数组。如果 checkbutton 点击​​第一部分而不是我将 addindex 存储在 nsmutable indexset arr1 和第二部分相同的东西之后我检查条件

if ([self.arr1 containsIndex: indexPath.row]) 
         [self.arr1 removeIndex: indexPath.row];
      else 
         [self.arr1 addIndex:indexPath.row];
     
       [_tblVScene reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];

if ([self.arr2 containsIndex: indexPath.row]) 
         [self.arr2 removeIndex: indexPath.row];
      else 
         [self.arr2 addIndex:indexPath.row];
     
       [_tblVScene reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];

【讨论】:

你不需要这样做。表格视图免费提供此信息。阅读有关表格视图及其如何重用单元格的更多信息。

以上是关于在 tableview 中,如果选择第 1 行第 1 行,那么为啥还要选择第 1 行第 1 部分?的主要内容,如果未能解决你的问题,请参考以下文章

iOS:如何传递节中的行索引

在杨辉三角形中,第m行第n个如何表示?(我需要的是一个公式!)

Swift - 在 tableView.selectRow 中更改背景颜色

didselectrowatindexpath,在 Tableview 中选择和取消选择行

在 TableView 部分中选择单元格

杨辉三角的第n行第n个数的求法(公式)