我有一个自定义单元格的表格视图,表示单个上传,每个单元格中都有一个进度指示器和一个成功/错误图标。我希望在进度更新时更新单元格,并指出它是否成功/失败。我这样做是让我的上传控制器广播NSNotifications以获得进度/成功/失败。
是否更好:
A)让每个单元格都有这些通知的NSNotification侦听器并更新单元格视图
或
B)让表视图控制器有一个NSNotification侦听器侦听这些通知,然后通过使用cellForRowAtIndexPath获取单元格来设置每个单元格的值。
我认为归结为 A 更容易实现,但我想知道是否存在性能损失,让有这么多听众听取这些通知并执行'如果此通知是关于我...'。与 B 相反, B 只有一个侦听器,可以推广到任何多侦听器和单侦听器设计。
答案 0 :(得分:5)
您可以为表视图设置键值观察(KVO)以处理行更新,然后使用它(使用自定义UITableViewCell
子类)使用对象中的信息更新单元格。有关使用KVO进行节/行更新的示例,请参阅Using KVO for Table Updates。