3

根据条件的结果,我想在表格单元格中显示 UIImageView。否则显示 UITableViewCellAccessoryCheckmark。我想在 IB 中构建单元格。当我不想显示 UIImageView 时,我不确定如何处理它。如果我以编程方式构建它,我会根据需要添加 UIImageView。但由于它将在 IB 中完成,因此 UIImageView 始终存在。默认是否应该单独保留单元格(图像显示),否则删除 UIImageView 并显示 UITableViewCellAccessoryCheckmark?如果这样做了,我是否需要在 UIImageView 上添加一个标签,以便可以访问和删除它?

4

1 回答 1

6

您可以轻松控制任何控件的可见性,包括 UIImageView。如果您想在 IB 中构建东西,那么一种解决方案是添加您需要的控件,将它们公开为属性,然后隐藏给定单元格不需要的控件。

例如

cell.image.hidden = YES;

隐藏时,它们没有绘制开销,尽管您的单元格可能有数千行,但实际单元格将很少,因此这是一个相当有效的解决方案。请记住,如果您调用 [tableView dequeueReusableCellWithIdentifier] (您应该这样做),单元格将被重用,因此您必须显式显示/隐藏其可见性可能已更改的控件。

另一种方法是让单元格带有和不带图像,并在向表格添加数据时选择正确的单元格。但是,对于管理两个相似但略有不同的资产的相似单元来说,可能会很痛苦。

于 2009-03-25T19:19:34.953 回答