Android Glide常見使用方式講解
效果圖

依賴
implementation 'com.github.bumptech.glide:glide:4.13.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.13.0'
implementation 'jp.wasabeef:glide-transformations:4.1.0'
普通顯示
沒有任何附加效果顯示,請求結(jié)果返回之后,直接在圖片容器中顯示
/**
* 無附件效果*/
private fun loadImage(){
Glide.with(this)
.asDrawable()
.load(url)
.dontAnimate()
.into(binding.noStyleImage)
}
占位符顯示
當(dāng)網(wǎng)絡(luò)請求過多或者業(yè)務(wù)繁忙時,Glide返回可能會有一定延遲,此空窗期就會不顯示任何東西,通過placeholder可添加一張占位符,在數(shù)據(jù)未返回之前,顯示一張默認(rèn)圖片
/**
* 有默認(rèn)占位圖片*/
private fun loadDefaultImage(){
Glide.with(this)
.asDrawable()
.load(url)
.placeholder(R.drawable.icon_default_songs)
.error(R.drawable.icon_error)
.dontAnimate()
.into(binding.defaultImage)
}
圓角顯示
在開發(fā)需求中,往往會需要將某些圖片進行圓角處理,通過transform(RoundedCorners(20))可完成圓角處理,其中20為圓角彎曲程度
/**
* 圓角圖片*/
private fun loadRadiusImage(){
Glide.with(this)
.asDrawable()
.load(url)
.transform(RoundedCorners(20))
.placeholder(R.drawable.icon_default_songs)
.error(R.drawable.icon_error)
.dontAnimate()
.into(binding.radiusImage)
}
高斯模糊顯示
有時會遇見將背景虛化、模糊處理等需求,通過apply(RequestOptions.bitmapTransform(BlurTransformation(20)))可完成上述需求,同樣20為模糊程度
/**
* 高斯模糊圖片效果*/
private fun loadVagueImage(){
Glide.with(this)
.asDrawable()
.load(url)
.apply(RequestOptions.bitmapTransform(BlurTransformation(20)))
.placeholder(R.drawable.icon_default_songs)
.error(R.drawable.icon_error)
.dontAnimate()
.into(binding.vagueImage)
}
生命周期
我們進入一個Activity時,觸發(fā)網(wǎng)絡(luò)請求,Glide開始請求數(shù)據(jù),當(dāng)Glide未完成數(shù)據(jù)返回時,我們退出此Activity,即銷毀,會觸發(fā)異常,因為Glide仍在運行,當(dāng)它的數(shù)據(jù)返回時,發(fā)現(xiàn)Activity已經(jīng)被銷毀啦,就會產(chǎn)生報錯異常,所以在必要的Glide代碼中加一個生命周期判斷
if (!this.isFinishing && !this.isDestroyed){
//Glide代碼
}
圖床工具推薦
最后推薦一個圖床工具,可以將本地上傳的圖片轉(zhuǎn)化為我們需要的URL格式,直接在chrome應(yīng)用商店搜索B站圖床,添加到擴展程序即可,相關(guān)的也有微博圖床、即刻圖床等

到此這篇關(guān)于Android Glide常見使用方式講解的文章就介紹到這了,更多相關(guān)Android Glide內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Android安裝apk文件并適配Android 7.0詳解
這篇文章主要介紹了Android安裝apk文件并適配Android 7.0詳解的相關(guān)資料,需要的朋友可以參考下2017-05-05
React-Native之Android(6.0及以上)權(quán)限申請詳解
這篇文章主要介紹了React-Native之Android(6.0及以上)權(quán)限申請詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-11-11

