Android Glide自定義圓角處理

2021-10-23 05:43:19 字數 1780 閱讀 7342

平時我們開發中會遇到ui出的帶圓角的,平時做的快取載入框架基本都是 glide, 那麼我們就在glide上來說一說實現方法。

1、**有人維護,不至於出現問題,專案組都搞不定的時候問題無法解決。(imageloader已沒人維護了)

2、**簡潔,可讀性很好。(fresco是乙個非常優秀的庫,但是配置稍顯麻煩,同時**風格讀起來有些生疏)

3、功能強大(400多k的包,包含很多功能,例如:像載入gif就是picasso做不到的)

第一步 先是新增依賴:

implementation 'com.github.bumptech.glide:glide:4.5.0'

(切記一定要申請許可權  往往最簡單的問題 總是會疏忽)

然後我們重寫乙個   (glideroundtransform)

/**

* created by shinnyyang on 2018/6/6.

* 自定義glide的圓角處理部分

*/public class glideroundtransform extends bitmaptransformation

public glideroundtransform(context context, int dp)

@override

bitmap bitmap = transformationutils.centercrop(pool, totransform, outwidth, outheight);

return roundcrop(pool, bitmap);

}if (source == null) return null;

bitmap result = pool.get(source.getwidth(), source.getheight(), bitmap.config.argb_8888);

if (result == null)

canvas canvas = new canvas(result);

paint paint = new paint();

paint.setshader(new bitmapshader(source, bitmapshader.tilemode.clamp, bitmapshader.tilemode.clamp));

paint.setantialias(true);

rectf rectf = new rectf(0f, 0f, source.getwidth(), source.getheight());

canvas.drawroundrect(rectf, radius, radius, paint);

return result;

}public string getid()

@override

public void updatediskcachekey(messagedigest messagedigest)

**中使用

glide.with(mcontext)

.load(t.getbody().getgoods().getpic_url())

.transform(new glideroundtransform(mcontext, 5)))

.into(ivheadpic);

附加 

/**

* glide requestoptions屬性

* created by $ on 2019/4/11.

*/public class requestoptionsstrategy extends requestoptions

}

自定義 如何自定義協議

何為自定義協議,其實是相對標準協議來說的,這裡主要針對的是應用層協議 常見的標準的應用層協議如http ftp smtp等,如果我們在網路通訊的過程中不去使用這些標準協議,那就需要自定義協議,比如我們常用的rpc框架 dubbo,thrift 分布式快取 redis,memcached 等都是自定義...

自定義控制項 自定義鐘錶

private context mcontext 畫筆 private paint mpaint 控制項的寬 private int mwidth x方向的圓心座標 private int center 鐘錶的半徑 private int mradio 圓環的寬 private int stroke...

自定義控制項及自定義屬性

自定義控制項在android開發中的重要性,是不言而喻,眾人皆知的。希望通過這二天的學習,能讓大家了解自定義控制項的原理,熟悉自定義控制項的使用步驟,並能寫出一些普通的效果。內容介紹 1 使用系統控制項,實現自定義的效果,案例有 優酷環形選單 廣告條 viewpager 下拉列表 spinner 2...