精灵和UIImageViews之间共享UIImage

时间:2012-03-27 01:38:48

标签: iphone ipad ios5 sprite

我正在考虑将精灵用于重型图像游戏。

我正在尝试确定在图像视图之间共享单个UIImage时是否分配了额外的内存。我通过创建40个图像视图进行测试,一次使用单个图像,一次创建40个图像实例,并且它们似乎使用相同数量的内存。

如果使用单个图像为每个图像视图分配额外的内存,那么使用精灵有什么用?

1 个答案:

答案 0 :(得分:2)

我相信我刚回答了自己的问题。看来两个测试的内存分配是相同的,因为我使用imageNamed:来加载图像。如上所述:Dispelling the UIImage imageNamed: FUD

  

关于缓存的一般行为,它基于文件名进行缓存(因此+ imageNamed的两个实例:具有相同的名称应该导致对相同缓存数据的引用)

我使用imageWithContentsOfFile重新进行测试:发现共享同一个UIImage时没有分配额外的内存。