2012-06-27 26 views
0

我有listView和自定義的ArrayAdapter它。在我的清單中查看很多圖片,並使用強大的內存清理功能:只有當我按下主頁按鈕並回到Android設備時,爲什麼只有內存清潔?

@Override 
public void onDestroy() {  
    list.clear(); 
    adapter.notifyDataSetChanged(); 
    listView.setAdapter(null); 
    super.onDestroy(); 
} 

並使用LazyLoader進行圖片加載。 但經過一段時間使用我的應用程序(當我更新列表)時,我仍然會得到「位圖大小超過vm預算」的錯誤。雖然如果我按回家按鈕並回到應用程序內存被清除。沒有它我怎樣才能清除記憶?

回答

1

確保您在不再使用的所有Bitmap對象上呼叫recycle()以儘快釋放其內存。

此外,使用Bitmap.createScaledBitmap()來創建一個像您的ImageView一樣小的位圖,從而節省一些額外的內存。

相關問題