先敬上官方git:https://github.com/bumptech/glide/wiki
android 廠推薦網(wǎng)絡(luò)框架
- 依賴包
implementation 你的v4 包
implementation 'com.android.support:support-v4:23.2.1'
- 基本的使用:
Glide.with(context) // 依賴組件气破,不要依賴Context,依賴具體的活動(dòng)(fragment,activiyt) ;glide 會(huì)隨具體的活動(dòng)生命周期做活動(dòng);防止內(nèi)存泄漏
.load(url) //需要加載的地址
.into(imageView); // 需要填充的view
- 添加縮略圖:
Glide.with(context)
.load(url)
.placeholder(R.drawable.place_image)//占位圖片
.error(R.drawable.error_image)//錯(cuò)誤圖片的展示
.into(imageView);
由于占位圖片一般都是放到本地:所以用int 值作為圖片的的傳值類型币厕;
- 動(dòng)畫效果:
crossFade() //默認(rèn)漸入的動(dòng)畫效果析珊《俺荩可以重寫crossFade(int) 來控制時(shí)間甘晤,
同時(shí)也可以自己設(shè)定動(dòng)畫來實(shí)現(xiàn)狐血;但是如果是自己自定義的view撮弧,就需要設(shè)置自己的viewtarger潘懊;
- 裁剪圖片:override(width,height) 姚糊;控制圖片的大小到制定view 的大小
- glide 的緩存機(jī)制:原理還是Lrucatch
glide 的內(nèi)存緩存是默認(rèn)打開的:skipMemoryCache(true) // 可以通過這個(gè)方法來設(shè)置緩存是否是要開啟
.diskCacheStrategy( DiskCacheStrategy.NONE )// 設(shè)置是否需要磁盤的緩存
DiskCacheStrategy.NONE 什么都不緩存
DiskCacheStrategy.SOURCE 只緩存全尺寸圖
DiskCacheStrategy.RESULT 只緩存最終的加載圖
DiskCacheStrategy.ALL 緩存所有版本圖(默認(rèn)行為)
- 加載圖片的優(yōu)先級(jí):
//設(shè)置 高 優(yōu)先級(jí)
Glide.with( context )
.load( highPriorityImageUrl )
.priority (Priority.HIGH )
.into( imageView );
//設(shè)置 低 優(yōu)先級(jí)
Glide.with( context )
.load( lowPriorityImageUrl )
.priority( Priority.LOW )
.into( imageView );
glide 的其他功能:
可以加載gif圖片,和video授舟;Target
圖片加載的回調(diào)救恨;當(dāng)圖片加載完成時(shí)的回調(diào);
可以代替int 方法释树;但是生命周期有可能不和活動(dòng)不再統(tǒng)一:
- ViewTarget ;
可以顯示在自定義的view 的上