我有一个UICollectionview里面有4个UIImageviews。这些用于在单元格上显示特定图标。不幸的是,当我有一个单元格用图像填充所有4个图像视图时,它可以正常工作。但是当一个单元格只显示少于4个项目时,它有时(因此并不总是)显示其他图标。它似乎来自其他(以前的)细胞。喜欢它没有正确回收。
这是我的代码。我有一个存储所有图像视图的插座。
@IBOutlet var savings: [UIImageView]!
接下来,我在Cell Viewcontroller中有一个方法,它根据给定的图标名称数组填充。
func setPropositions(propositions: [SupplierProposition])
{
for (index, item) in propositions.enumerate() {
if index < 4 {
savings[index].image = nil
savings[index].setNeedsDisplay()
if let image = UIImage(named: item.iconName!) {
savings[index].image = image
} else {
savings[index].image = nil
}
}
}
}
如你所见,我尝试了一切以确保在渲染之前图像视图为空,但它不起作用。谁知道我可能做错了什么?
答案 0 :(得分:1)
喜欢它没有正确回收
没有。这就像你没有正确回收它。 此单元格可能已经被使用过,因此它可能已经包含了您之前放置的图像视图;如果此索引路径的单元格应该具有较少的图像视图,则 作业将删除您不想要的作业。