2011-05-08 58 views
0

所以我想要做的是如果image1image2衝突,我想從屏幕上刪除image1(不只是隱藏它,但刪除它)的方式,應用程序不會崩潰或使用多少內存。刪除UIImageView

我認爲這與release有關,但我不確定。我該怎麼做,請嗎?

回答

3

從上海華盈刪除

[image1 removeFromSuperview];

編輯:

,如果你有一個指向此搜索,你可能只是把它添加到上海華並沒有釋放它。所以,如果是這種情況並且爲了避免任何泄漏,只需在從超級視圖中刪除時釋放它。

[image1 removeFromSuperview]; [image1 release], image1 = nil;

1

只需從上海華盈刪除:

[image1 removeFromSuperview]; 

如果你管理你的記憶正確迄今爲止,你不需要在這一點上鬆開。這裏有幾個可能性:

  1. 你的類並沒有自己image1參考(即它不是一個屬性)。因此,當您創建image1並將其添加到您的視圖時,您一定要自動釋放它。因此,該觀點具有自己的參考;當它從該視圖中移除時,該視圖將釋放它。

  2. 類做了自己去image1參考(即它是一個屬性)。-dealloc,你已經根據Objective-C的內存管理成語發佈image1,所以當你從上海華刪除它,你仍然並不需要進行內存管理。