欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android Glide常見使用方式講解

 更新時(shí)間:2023年01月16日 14:45:33   作者:FranzLiszt1847  
對(duì)于Glide這個(gè)加載圖片的框架,很多人都在用,我之前使用的是ImageLoader,最近查資料時(shí),發(fā)現(xiàn)Glide才是Google推薦的加載圖片框架,功能非常強(qiáng)大,而且還有Google專人維護(hù),要知道,ImageLoader已經(jīng)沒人維護(hù)了,除了問題可沒人解答。所以有必要整理一下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'

普通顯示

沒有任何附加效果顯示,請(qǐng)求結(jié)果返回之后,直接在圖片容器中顯示

  /**
     * 無附件效果*/
    private fun loadImage(){
        Glide.with(this)
            .asDrawable()
            .load(url)
            .dontAnimate()
            .into(binding.noStyleImage)
    }

占位符顯示

當(dāng)網(wǎng)絡(luò)請(qǐng)求過多或者業(yè)務(wù)繁忙時(shí),Glide返回可能會(huì)有一定延遲,此空窗期就會(huì)不顯示任何東西,通過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ā)需求中,往往會(huì)需要將某些圖片進(jìn)行圓角處理,通過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)
    }

高斯模糊顯示

有時(shí)會(huì)遇見將背景虛化、模糊處理等需求,通過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)
    }

生命周期

我們進(jìn)入一個(gè)Activity時(shí),觸發(fā)網(wǎng)絡(luò)請(qǐng)求,Glide開始請(qǐng)求數(shù)據(jù),當(dāng)Glide未完成數(shù)據(jù)返回時(shí),我們退出此Activity,即銷毀,會(huì)觸發(fā)異常,因?yàn)镚lide仍在運(yùn)行,當(dāng)它的數(shù)據(jù)返回時(shí),發(fā)現(xiàn)Activity已經(jīng)被銷毀啦,就會(huì)產(chǎn)生報(bào)錯(cuò)異常,所以在必要的Glide代碼中加一個(gè)生命周期判斷

if (!this.isFinishing && !this.isDestroyed){
//Glide代碼
}

圖床工具推薦

最后推薦一個(gè)圖床工具,可以將本地上傳的圖片轉(zhuǎn)化為我們需要的URL格式,直接在chrome應(yīng)用商店搜索B站圖床,添加到擴(kuò)展程序即可,相關(guān)的也有微博圖床、即刻圖床等

到此這篇關(guān)于Android Glide常見使用方式講解的文章就介紹到這了,更多相關(guān)Android Glide內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • android電話模擬器(示例代碼)

    android電話模擬器(示例代碼)

    本篇文章我將為大家介紹一下android電話模擬器(示例代碼),需要的朋友可以過來參考下,希望對(duì)大家有所幫助
    2013-11-11
  • 最新評(píng)論