(2)圖片加載原理

Android系統加載圖片是先要把圖片轉換爲Bitmap對象然後再傳到ImageView裏頭顯示的。

現在難點是:
- 不同的圖片有不同的大小,造成Bitmap對象size不一樣
- 不同的機器內存不一致,內存小的機器很容易因爲單個或者多個Bitmap導致OOM

爲了防止OOM

  • 適當的給圖片進行壓縮
  • 適當的緩存方案(ViewHolder,LruCache,DiskLruCache等)
  • 使用BitmapRegionDecoder加載大圖局部(其實就是屏幕大小的顯示部分)

適當壓縮圖片

Android API提供了BitmapFactory 類,BitmapFactory 有很多解析方法方便我們創建和壓縮bitmap對象


LruCache緩存

(1)LruCache原理分析


BitmapRegionDecoder高清加載大圖

[Android 高清加載巨圖方案 拒絕壓縮圖片](http://blog.csdn.net/lmj623565791/article/details/49300989
)


各主流圖片框架架構

Android 三大圖片緩存原理、特性對比


參考

Android高效加載大圖、多圖解決方案,有效避免程序OOM

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章