【发布时间】:2010-08-13 21:14:00
【问题描述】:
因此,当我选择表格视图单元格时,我将活动指示器设置为附件视图。
UITableViewCell *cell = [tableVw cellForRowAtIndexPath:indexPath];
UIActivityIndicatorView *act = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
[act startAnimating];
[cell setAccessoryView:act];
[act release];
稍后,当我有需要继续前进的数据时,我想在转换到另一个视图之前删除此活动指示器,以便单元格返回到它的默认状态。以下只是不起作用。
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:self.tableView.indexPathForSelectedRow];
[cell.accessoryView removeFromSuperview];
[cell setAccessoryType:UITableViewCellAccessoryDisclosureIndicator];
【问题讨论】:
-
你试过没有 removeFromSuperview 行吗?另外,您的 tableView 的名称是什么?在第一个代码块中,您与第二个代码块有所不同。如果不是复制/粘贴错误,这可能是个问题。
-
获取对单元格本身的引用并删除附件视图将不起作用。 (首先,您不想删除附件视图,只需将其设置为
nil即可)。您需要通过调用reloadRowsAtIndexPaths:告诉表格视图重绘单元格。 -
@anschuchimala - 谢谢。这是其中的一部分。将其设置为 nil 似乎有帮助,但活动视图不会消失并更改回我的默认单元格附件,直到选择另一行。 reloadRowsAtIndexPaths 似乎没有做任何事情
标签: iphone cocoa-touch uitableview