天天看點

UniversalImageLoader(異步加載大量圖檔)

universalimageloader是用于加載圖檔的一個開源項目,universalimageloader是實作異步加載大量圖檔的源碼和例子,包括緩存、硬碟緩存、容錯機制等技術。在其項目介紹中是這麼寫的,

支援多線程圖檔加載;

提供豐富的細節配置,比如線程池大小,htpp請求項,記憶體和磁盤緩存,圖檔顯示時的參數配置等等;

提供雙緩存;

支援加載過程的監聽;

提供圖檔的個性化顯示配置接口;

widget支援;

要使用imageloader就要到這裡下載下傳jar包:

然後導入項目中去就行了。

displayimageoptions options,圖檔的參數配置對象,

options = new

displayimageoptions.builder()

.showstubimage(r.drawable.stub_image)

.showimageforemptyuri(r.drawable.image_for_empty_url)

.cacheinmemory()

.cacheondisc()

.build();

第一個是圖檔加載過程中顯示的圖檔,第二個是圖檔加載失敗時用的的圖檔,第三個允許記憶體緩存,第四個允許磁盤緩存。除此之外還有兩個,imagescaletype(imagescaletype

imagescaletype)圖檔縮放類型,displayer(bitmapdisplayer

displayer)bitmap顯示控制層,可以在顯示圖檔前對bitmap簡單處理一下,這兩個不是一定要設定,應為他們都有預設值。

最後一個參數imageloadinglistener

listener當然是監聽過程的回調接口。

通過imageloader執行個體對象,調用 public void displayimage(string uri, imageview

imageview, displayimageoptions options, imageloadinglistener listener)

方法将開始加載圖檔。

工作線程: loadanddisplayimagetask displayimagetask = new

loadanddisplayimagetask(configuration, imageloadinginfo, new

handler());

詳細的可以參考“參考資料連結”,這裡不做詳細的說明。

參考資料連結:

圖檔加載架構---universalimageloader使用(一):

圖檔加載架構--imageloader實作(二):

開源項目之universalimageloader(異步加載大量圖檔):

android開源架構imageloader的完美例子:

代碼下載下傳連結: