在开发咋时候碰见过glide如果显示图片是透明的话会出现浅绿色,原因是Glide默认的Bitmap格式是RGB_565,这也是导致在加载图片是可能变绿的罪魁祸首。RGB_565代表8位RGB位图,而Picasso默认的Bitmap格式是ARGB_8888代表32位RGB位图。以下有两种方法解决:
1.diskCacheStrategy(DiskCacheStrategy.SOURCE)直接设置glide属性
Glide.with(context).load(url) .dontAnimate() .placeholder(R.drawable.no_images) .diskCacheStrategy(DiskCacheStrategy.SOURCE) .error(R.drawable.no_images) .priority(Priority.NORMAL) .into(iv);
2.如果以上还是没办法解决问题的话,创建一个glide像素转换类,然后在AndroidManifast.xml引用
public class GlideConfiguration implements GlideModule { @Override public void applyOptions(Context context, GlideBuilder builder) { builder.setDecodeFormat(DecodeFormat.PREFER_ARGB_8888); } @Override public void registerComponents(Context context, Glide glide) { } }
AndroidManifast.xml引用
<meta-data android:name="应用包名.GlideConfiguration" android:value="GlideModule"/>