因为项目需要,得在列表 item 显示了 GIF 图片的 imageview 的右下角添加 GIF 标识。
由于用了 glide,又用的是 centerCrop,本身的 imageview 宽度又不一定(根据不同张数有不同的排版),如果用 glide 的 transform ,那画出来的 GIF 标识位置就不对,并且居中还会有一定的问题(因为宽度不确定,后来只能切回 imageview 本身的 centerCrop,切回后再用 glide 的 transform 来画 GIF 标识位置就更不对了)。无奈只能考虑重写 imageview ,通过 ondraw 方法去画标识。
下面就以右下角添加 GIF 标识为例子进行说明:
效果大概是这样的:
下面就来说说实现:
首先是自定义 Application:
public class MyApplication extends Application {
private static Context context;
@Override
public void onCreate() {
super.onCreate();
context = getApplicationContext();
}
public static Context getContext(){
return context;
}
}