我有一個顯示小位圖的視圖,這在我的應用程序的許多地方(特別是列表視圖)中使用。每次使用BitmapFactory.decodeResource(resource, id)
創建該視圖的實例時,我正在加載該位圖。我意識到我可以通過將一次位圖加載到一個靜態變量中(以便視圖的所有實例都可以重用它)並且確實可以爲每個視圖實例節省大約2-4毫秒的時間,從而提高性能。我的問題是,以這種方式使用靜態變量會導致Android中的任何類型的內存泄漏?我很擔心,因爲我還沒有發現任何其他使用靜態變量來存儲位圖的例子。在靜態變量中存儲位圖資源
後續問題:How to keep a Bitmap in memory
報價羅曼蓋伊「當被拉伸連接到一個視圖,該視圖在上面的代碼片段中,這意味着drawable有一個對TextView的引用,它本身有一個對活動(Context)的引用,它依次引用幾乎所有的東西(取決於你的代碼。)「...所以保持靜態會導致內存泄漏。 – Nitin 2012-01-11 05:46:59
Thanks @ 0cool,我看過那篇文章,但我不確定'android.graphics.Bitmap'(不是'android.graphics.drawable.BitmapDrawable')也是'Drawable'。那確實是這樣嗎? – 2012-01-11 16:37:17
嗨,@AbdullahJibaly在使用位圖之前,我們是否需要導入或擴展某些東西?正如我在做'位圖設備;'和我的IDE給一個錯誤,_Bitmap無法解析爲type_。提前致謝。 – Learner 2017-02-06 06:12:54