ImageLoader 配置解析

2021-09-11 21:59:38 字數 3101 閱讀 6699

這是imageloader的github位址,若有其他不懂的,可以看這裡,包括原理,用法示例等等。

全域性配置,如下:

imageloaderconfiguration configuration = new imageloaderconfiguration.builder(this)

.memorycachesize((int) (runtime.getruntime().maxmemory() / 8))

.memorycacheextraoptions(480, 800)  // 這個屬性好像沒有什麼用,不用管它,一般不去設定

.diskcacheextraoptions(480, 800, null) // 這個也沒有啥作用,不設定就行了

.imagedecoder(new baseimagedecoder(false)) // default 解碼器,負責將輸入流 inputstream 轉換為 bitmap 物件,不是解密,只是把流轉換為bitmap

.defaultdisplayimageoptions(displayimageoptions.create******())

.diskcache(new unlimiteddisccache(new file(""))) // 確定檔案快取策略

.diskcachesize(50 * 1024 * 1024)  // 大小

.diskcachefilecount(100)          // 數量

.memorycache(new lrumemorycache(5 * 1024 * 1024))  // 定義自己的記憶體快取策略

.memorycachesize(5 * 1024 * 1024)  // 記憶體快取大小

.threadpoolsize(3) // 執行緒數量

.threadpriority(thread.norm_priority - 1) //降低執行緒優先順序,保證ui主線程不受太大影響

.writedebuglogs()

.build();

imageloader.getinstance().init(configuration);

public static synchronized displayimageoptions getdevicelistcoverimageoptions() 

return mdevicelistimageoptions;

}

這是乙個一般的display options 設定的**示例,官方文件中給出的所有屬性如下:

// don't copy this code to your project! this is just example of all options using.

// see the sample project how to use imageloader correctly.

displayimageoptions options = new displayimageoptions.builder()

.showimageonloading(r.drawable.ic_stub) // resource or drawable

.showimageforemptyuri(r.drawable.ic_empty) // resource or drawable

.showimageonfail(r.drawable.ic_error) // resource or drawable

.resetviewbeforeloading(false) // default

.delaybeforeloading(1000)

.cacheinmemory(false) // default

.cacheondisk(false) // default

.preprocessor(...)

.postprocessor(...)

.extrafor**********(...)

.considerexifparams(false) // default

.imagescaletype(imagescaletype.in_sample_power_of_2) // default

.bitmapconfig(bitmap.config.argb_8888) // default

.decodingoptions(...)

.displayer(new ******bitmapdisplayer()) // default

.handler(new handler()) // default

.build();

preprocessor(...) .postprocessor(...) 這一般情況下也沒有去設定,不用太關注;

considerexifparams(true)  //是否考慮jpeg影象exif引數(旋轉,翻轉);

bitmapconfig(bitmap.config.rgb_565)//設定的解碼型別;

bitmapconfig(bitmap.config.rgb_565)//設定的解碼型別;

displayer(new roundedbitmapdisplayer(20))//是否設定為圓角,弧度為多少  

displayer(new fadeinbitmapdisplayer(100))//是否載入好後漸入的動畫時間  

1 2 3點其實用不太著,不用太關注;

imagescaletype(imagescaletype imagescaletype)  是設定 的縮放方式,縮放型別magescaletype:

這裡的imagescaletype 其實可以用imageview自帶的scaletype 去替代,個人覺得scaletype比imagescaletype更好;

1.displayer(new roundedbitmapdisplayer(20)) 這裡的20 單位是dp, 不是px ,不用去轉換;

2.如果要顯示圓形,可以用自定義的circleimageview去裝載,或者是 displayer(new roundedbitmapdisplayer(90))或者360 ,自己沒有試驗,不知道改變圓角大小的方式行不行的通。

ImageLoader配置(注釋)

配置imageloader private void configimageloader memclass final int cachesize 1024 1024 memclass 4 logger.d memory cache size cachesize memorycacheextraop...

ImageLoader配置過程

imageloader使用詳解 github位址 配置imageloader public void initimageloader 在使用載入的類中去配置這些資源,比如在activity中進行配置 bash public void initoptions imageloader的使用 imagel...

ImageLoader配置引數

imageloader使用詳解 github位址 配置imageloader public void initimageloader 在使用載入的類中去配置這些資源,比如在activity中進行配置 bash public void initoptions imageloader的使用 imagel...