首页 > 系统 > Android > 正文

Glide4 高效加载图片的配置详解

2019-10-22 18:14:02
字体:
来源:转载
供稿:网友

本文介绍了Glide4 高效加载图片的配置详解,分享给大家,具体如下:

在build.gradle中添加glide依赖

// glide 依赖compile 'com.github.bumptech.glide:glide:4.6.1'// glide 相关注解,生成GlideApp代码annotationProcessor 'com.github.bumptech.glide:compiler:4.6.1'// Glide网络库配置成okhttp3compile ('com.github.bumptech.glide:okhttp3-integration:4.6.1') {  transitive = false}

Glide全局配置类

package com.leo.demo;import android.content.Context;import android.support.annotation.NonNull;import com.bumptech.glide.Glide;import com.bumptech.glide.GlideBuilder;import com.bumptech.glide.Registry;import com.bumptech.glide.annotation.GlideModule;import com.bumptech.glide.load.engine.DiskCacheStrategy;import com.bumptech.glide.load.engine.cache.ExternalCacheDiskCacheFactory;import com.bumptech.glide.module.AppGlideModule;import com.bumptech.glide.request.RequestOptions;/** * Created by kangyi on 2018/3/20. * * Glide全局配置,使用GlideModule注解执行自动代码生成,生成GlideApp,后续的Glide * 调用都需要替换为GlideApp.with(context).load(url).into(imageView) 的方式 * */@GlideModulepublic class GlobalGlideConfig extends AppGlideModule {  @Override  public void registerComponents(@NonNull Context context, @NonNull Glide glide, @NonNull Registry registry) {    super.registerComponents(context, glide, registry);  }  @Override  public boolean isManifestParsingEnabled() {    return false;  }  @Override  public void applyOptions(@NonNull Context context, @NonNull GlideBuilder builder) {    super.applyOptions(context, builder);    /**     * DiskCacheStrategy.NONE: 表示不缓存任何内容。     * DiskCacheStrategy.DATA: 表示只缓存原始图片。     * DiskCacheStrategy.RESOURCE: 表示只缓存转换过后的图片。     * DiskCacheStrategy.ALL : 表示既缓存原始图片,也缓存转换过后的图片。     * DiskCacheStrategy.AUTOMATIC: 表示让Glide根据图片资源智能地选择使用哪一种缓存策略(默认选项)。     */    builder.setDefaultRequestOptions(new RequestOptions().diskCacheStrategy(DiskCacheStrategy.RESOURCE));    /**     * 优先外部存储作为磁盘缓存目录,防止内部存储文件过大     * 外部存储目录默认地址为:/sdcard/Android/data/com.sina.weibolite/cache/image_manager_disk_cache     */    builder.setDiskCache(new ExternalCacheDiskCacheFactory(context));  }}

代码解析

磁盘缓存策略

 

缓存常量 说明
DiskCacheStrategy.NONE 表示不缓存任何内容。
DiskCacheStrategy.DAT 表示只缓存原始图片。
DiskCacheStrategy.RESOURCE 表示只缓存转换过后的图片。
DiskCacheStrategy.ALL 表示既缓存原始图片,也缓存转换过后的图片。
DiskCacheStrategy.AUTOMATIC 表示让Glide根据图片资源智能地选择使用哪一种缓存策略(默认选项)。

 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持VEVB武林网。


注:相关教程知识阅读请移步到Android开发频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表