ProgressView不会在tableview中更新

时间:2012-11-30 16:13:20

标签: objective-c ios

我正在尝试更新自定义tableview单元格的progressview,但进度视图不会更新。

我可以在tableview单元格上设置标签,但是访问诸如进度条或活动指示符之类的东西不起作用。

我在自定义单元格上执行以下操作

cell.progressView.hidden = NO;
cell.progressView.progress = 0.5;
[cell.progressView setNeedsDisplay];

即使在调试器中我看到对象具有正确的单元格类型并且已分配progressView,这也不起作用。

我也尝试过对单元格本身的setNeedsDisplay,但没有运气。我错过了什么?

1 个答案:

答案 0 :(得分:1)

调用[self tableView:tableView cellForRowAtIndexPath:indexPath];很可能是问题,因为这可能导致另一个单元格从表中出列。因此,您最终会设置一个新单元格,而不是当前正在显示的单元格。

相反,这样做:

CustomTableViewCell *cell = (CustomTableViewCell *)[tableView cellForRowAtIndexPath:indexPath];

这直接向表格询问单元格。如果该行可见,则应该返回当前显示的单元格。