ios 4.3 UITableView / UITableViewCell w /自定义背景在删除时不重绘

时间:2011-05-20 15:56:51

标签: objective-c ios uitableview ios4

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

谢谢

1 个答案:

答案 0 :(得分:1)

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

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

并为其提供一个0或(last)的indexPath行,具体取决于它是哪一行。