【问题标题】:ios 4.3 UITableView/UITableViewCell w/ custom background not redrawing on deleteios 4.3 UITableView/UITableViewCell w/自定义背景在删除时不重绘
【发布时间】:2011-05-20 23:59:21
【问题描述】:

我有一个 UITableView,它为单元格使用自定义背景图像(第一个和最后一个单元格的圆边)。当第一个或最后一个单元格被删除(通过 commitEditingStyleForRowAtIndexPath)时,tableView 不会立即重绘单元格。也就是说,如果我删除第一个单元格(带有圆形边缘),第二个单元格将成为第一个单元格(如预期的那样),但它没有圆形边缘背景图像。直到这个单元格被拖出视图,或者我切换到不同的选项卡并返回,“新”第一个单元格才具有适当的背景图像。现在,我可以在删除操作后调用 reloadData,这会强制整个表重绘,这似乎可行,但 API 文档建议不要这样做,而且效率低下。所以,我的问题是,调用堆栈中的哪个位置是在 commitEditingStyleForRowAtIndexPath 操作之后触发重绘我的“新”第一个单元格的最佳位置?

谢谢

【问题讨论】:

    标签: objective-c ios uitableview ios4


    【解决方案1】:

    仅重新加载该行/单元格:

      - (void)reloadRowsAtIndexPaths:(NSArray *)indexPaths 
                 withRowAnimation:(UITableViewRowAnimation)animation
    

    并给它一个 indexPath 行 0 或(最后一个),这取决于它是哪一个。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-04-25
      • 1970-01-01
      • 1970-01-01
      • 2018-03-10
      • 2011-09-12
      • 2017-07-06
      • 2011-08-22
      相关资源
      最近更新 更多