基于通知更新表格单元格的最佳实践

时间:2011-02-24 01:44:39

标签: iphone objective-c uitableview

我有一个自定义单元格的表格视图,表示单个上传,每个单元格中都有一个进度指示器和一个成功/错误图标。我希望在进度更新时更新单元格,并指出它是否成功/失败。我这样做是让我的上传控制器广播NSNotifications以获得进度/成功/失败。

是否更好:

A)让每个单元格都有这些通知的NSNotification侦听器并更新单元格视图

B)让表视图控制器有一个NSNotification侦听器侦听这些通知,然后通过使用cellForRowAtIndexPath获取单元格来设置每个单元格的值。

我认为归结为 A 更容易实现,但我想知道是否存在性能损失,让有这么多听众听取这些通知并执行'如果此通知是关于我...'。与 B 相反, B 只有一个侦听器,可以推广到任何多侦听器和单侦听器设计。

1 个答案:

答案 0 :(得分:5)

您可以为表视图设置键值观察(KVO)以处理行更新,然后使用它(使用自定义UITableViewCell子类)使用对象中的信息更新单元格。有关使用KVO进行节/行更新的示例,请参阅Using KVO for Table Updates