将dequeueReusableCellWithIdentifier应用于一堆UIImageViews而不是TableviewCell

时间:2012-02-02 14:39:40

标签: objective-c ios xcode

我不确定这是否可行,但我只是希望回答有关dequeueReusableCellWithIdentifier的问题以及是否可以应用于UITableViewCell以外的其他问题。也许不是dequeueReusableCellWithIdentifier完全相同,但也许是同一个想法。

我有一堆UIImageViews,它们出现在一个网格中,它们都有相同的图像,用户可以删除并添加更多的网格,因此它非常动态。但我希望可能有一种方法可以重用用户已删除的一些图像,因为在用户与它们交互一段时间后,我发现了一些非常大的性能问题。

有人可以给我一些建议吗?

2 个答案:

答案 0 :(得分:0)

为什么不创建一个UITableViewCell&在它们上添加2 ImageViews。别忘了为dequeueReusableCellWithIdentifier照常添加一个唯一的小区标识符。

像这样 -

enter image description here

答案 1 :(得分:0)

没有内置机制,但创建一个机制并不困难。

只需将NSMutableArray添加到视图控制器即可。每次从网格中删除视图时,因为它已移出屏幕,请将其添加到数组中。每次需要向网格添加新视图时,请检查数组并查看其中是否有任何视图。如果有,请从阵列中删除一个并将其添加到屏幕。如果没有,请创建一个新视图。

这就是查看dequeing和re-use的全部内容。

你不需要复制reuseIdentifier的东西,因为(我猜)网格中的所有视图都是同一个类。

如果确实需要多个不同的视图,只需拥有多个队列数组,并为不同的视图类型使用不同的数组。