【问题标题】:Highlight all cells in a specific tableview section突出显示特定表格视图部分中的所有单元格
【发布时间】:2011-09-15 19:58:48
【问题描述】:

我的要求是:如果用户单击某个部分中的任何行,则该部分中的所有行都需要突出显示(更改背景颜色)。我有一个自定义的 tableviewcell。

我试图在自定义 tableviewcell 中使用 setSelected,但是一旦滚动,单元格就会重置(显然)。

所以,为了解决这个问题,在我的 - (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath 中,我试图使用 [tableView indexPathForSelectedRow].section 来检索该部分,然后我循环通过它来选择单元格。

问题最终是每次滚动时,您都会注意到单元格被选中,这使它看起来有问题。

有什么建议吗?

【问题讨论】:

    标签: iphone uitableview


    【解决方案1】:

    确保您的应用不依赖表格单元格来记住它们的选择状态 - 您的应用应该跟踪视图之外的其他位置选择和未选择的内容。

    您的表格数据源的-tableView:cellForRowAtIndexPath: 方法在表格每次需要显示一个新单元格(即以前不可见的单元格)时被调用。这是您正确配置单元的机会。它应该检查表格的数据,确定单元格是否应该被选中,并适当地设置选中状态。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-03
      • 2020-03-29
      • 2011-04-12
      • 2020-09-08
      • 1970-01-01
      相关资源
      最近更新 更多