0
我有UIScrollView的3個UIImages,我在下面的方式初始化這些圖片:UIImage的分配問題
UIImage *dimage = [[UIImage alloc] initWithData:data];
如果數據是從NSData的URL請求得到。在此之後,我緩存圖像。 當我檢查內存分配時,3個映像每個佔用472 Kb,並且CoreGraphics庫中的「img_data_lock」請求了分配。 當我檢查磁盤緩存上的圖像大小時,它每個都是230Kb。
我不知道如何才能佔用更多的空間。我希望我的問題很清楚。
感謝TechZen,磁盤緩存意味着設備上的「/Library/Cache」文件夾,我將其用於臨時緩存。
所以沒有什麼我可以做的。 – Nnp 2010-01-22 03:31:58
我認爲你沒有問題。磁盤上的數據大小與內存中對象的大小之間幾乎沒有關係。除非清除數據,否則UIImage對象將始終大於數據。請記住,數據不是UIImage對象本身,而只是它的一部分。 UIImage對象必須存儲除原始數據之外的其他信息。其他信息使其大於數據。 – TechZen 2010-01-22 14:21:48
感謝TechZen,我只是關注內存,當內存提升1MB而移動到這個特定的視圖,所以它引起了我的注意力。所以現在我只在scrollview中保存3張圖片,只是爲了節省內存。 – Nnp 2010-01-22 19:15:03