引入
compile 'com.github.bumptech.glide:glide:+'
注:"+"表示始終請(qǐng)求最新版
簡(jiǎn)單使用
Glide.with(context)
.load(url)//圖片地址
.placeholder(R.mipmap.ic_launcher)//加載中顯示的圖片
.error(R.mipmap.ic_launcher)//加載出錯(cuò)顯示的圖片
.crossFade()//淡入效果
.into(imageView);
緩存多尺寸
因?yàn)镚lide默認(rèn)只緩存一種尺寸大小的圖片,即當(dāng)前要加載的ImageView大小的圖片,當(dāng)你要在另一個(gè)不同大小的ImageView中加載同一張圖片時(shí)Glide就會(huì)再次請(qǐng)求加載新的尺寸的圖片,但是Glide給我們提供了一個(gè)設(shè)置可以緩存全尺寸的圖片,這樣在不同大小的ImageView中加載同一張圖片就只會(huì)產(chǎn)生一次請(qǐng)求。
Glide.with(context)
.load(url)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(imageView);
加載特定大小的圖片
Glide.with(context)
.load(url)
.override(300, 200);
.into(imageView);
Center Cropping
Glide.with(context)
.load(url)
.centerCrop();
.into(imageView);
Transforming
Glide.with(context)
.load(url)
.transform(new CircleTransform(context))
.into(imageView);
特性:加載Gif、加載本地圖片、asbitmap
Glide可以加載Gif動(dòng)態(tài)圖,使用方法和加載普通圖片一樣,同時(shí)因?yàn)镚lide和Activity/Fragment的生命周期是一致的,因此gif的動(dòng)畫(huà)也會(huì)自動(dòng)的隨著Activity/Fragment的狀態(tài)暫停、重放。Glide 的緩存在gif這里也是一樣,調(diào)整大小然后緩存。
Glide.with(context)
.load(url)//圖片地址
.asGif()//asGif加載Gif動(dòng)態(tài)圖,asBitmap可以將Gif或者視頻(沒(méi)試過(guò))解碼成bitmap
.placeholder(R.mipmap.ic_launcher)//加載中顯示的圖片
.error(R.mipmap.ic_launcher)//加載出錯(cuò)顯示的圖片
.crossFade()//淡入效果
.into(imageView);