Android Glide白色图片压缩变绿的问题解决

在Android编码中,常引用一些第三方库,这样可以避免重复造轮子。这篇文章就是解决在使用Glide加载图片的时候出现白色背景图片变绿的问题。

1.Glide.with(a).load(url).diskCacheStrategy(DiskCacheStrategy.SOURCE).into(i); 

使用.diskCacheStrategy(DiskCacheStrategy.SOURCE)可以解决部分机器图片因为压缩变绿的问题。该方法是指将原图缓存。

2.下面的方法可彻底解决这个问题。

  新建如下类

 

package utils;

import android.content.Context;

import com.bumptech.glide.Glide;
import com.bumptech.glide.GlideBuilder;
import com.bumptech.glide.load.DecodeFormat;
import com.bumptech.glide.module.GlideModule;

/**
 * 类说明:Glide使用bitmap的编码RGB565,所以有时的时候由于过度压缩导致了图片变绿。所以要改变一下Glidebitmap编码。
 */
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) {

    }
}


然后在AndroidManifest.xml中

 android:name=${your paths}.GlideConfiguration"
 android:value="GlideModule" />

特别感谢:https://blog.csdn.net/jing__jie/article/details/78232319作者

你可能感兴趣的:(Android技术)