我正在尝试更新自定义tableview单元格的progressview,但进度视图不会更新。
我可以在tableview单元格上设置标签,但是访问诸如进度条或活动指示符之类的东西不起作用。
我在自定义单元格上执行以下操作
cell.progressView.hidden = NO;
cell.progressView.progress = 0.5;
[cell.progressView setNeedsDisplay];
即使在调试器中我看到对象具有正确的单元格类型并且已分配progressView,这也不起作用。
我也尝试过对单元格本身的setNeedsDisplay,但没有运气。我错过了什么?
答案 0 :(得分:1)
调用[self tableView:tableView cellForRowAtIndexPath:indexPath];
很可能是问题,因为这可能导致另一个单元格从表中出列。因此,您最终会设置一个新单元格,而不是当前正在显示的单元格。
相反,这样做:
CustomTableViewCell *cell = (CustomTableViewCell *)[tableView cellForRowAtIndexPath:indexPath];
这直接向表格询问单元格。如果该行可见,则应该返回当前显示的单元格。