gilde是一款很优秀的图片加载框架,使用起来也很方便。有时候我们需要对glide做一些配置,现记录一下glide全局配置的方法。
环境说明 Android studio 2.3.3 glide:3.6.1
新建一个MyGlideModule继承GlideModule
public class MyGlideModule implements GlideModule {
int memorySize = (int) (Runtime.getRuntime().maxMemory()) / 8; // 取1/8最大内存作为最大缓存
@Override
public void applyOptions(Context context, GlideBuilder builder) {
// builder.setDecodeFormat(DecodeFormat.PREFER_RGB_565);
builder.setMemoryCache(new LruResourceCache(memorySize));
MemorySizeCalculator calculator = new MemorySizeCalculator(context);
int defaultBitmapPoolSize = calculator.getBitmapPoolSize();
//修改bitmappool的大小为默认的1.2倍
int customBitmapPoolSize = (int) (1.2 * defaultBitmapPoolSize);
builder.setBitmapPool(new LruBitmapPool(customBitmapPoolSize));
File cacheDir = context.getExternalCacheDir();//指定的是数据的缓存地址
int diskCacheSize = 1024 * 1024 * 400;//最多可以缓存多少字节的数据 400M
//设置磁盘缓存大小
builder.setDiskCache(new DiskLruCacheFactory(cacheDir.getPath(), "glide", diskCacheSize));
}
@Override
public void registerComponents(Context context, Glide glide) {
}
}
除此之外还要在清单文件中加以配置,这个类才会在app启动的时候被加载(注意:meta-data 应该放在application中)。
<meta-data
android:name="com.lingying.SaleManage.MyGlideModule" //自定义类的位置
android:value="GlideModule" />