关闭

Android图片缓存之Glide基础(一)

标签: android图片缓存Glide
447人阅读 评论(0) 收藏 举报

前言

这篇文章给大家介绍下android目前使用比较广泛的一个图片缓存库—Glide,这个库是google的一位开发人员在github上的一个开源项目。目前google的一些官方应用都在使用它,所以你现在就开始放心的用吧。

添加Glide
在module的build.gradle中添加以下依赖:

compile 'com.github.bumptech.glide:glide:3.7.0'

Glide使用方法和大名鼎鼎的Picasso比较类似,如果你有Picasso的使用经验,那么你将很容易上手使用。
常用功能

//占位符
Glide.with(this).load(url).placeholder(R.mipmap.ic_launcher).into(imageview);
//错误占位符
Glide.with(this).load(url).error(R.mipmap.ic_launcher).into(imageview);
//强制显示淡入淡出功能,300表示动画时间300ms
Glide.with(this).load(url).crossFade(300).into(imageview);
//不要淡入淡出效果
Glide.with(this).load(url).dontAnimate().into(imageview);
//改变图片大小,单位是pixel
Glide.with(this).load(url).override(500,500).into(imageview);
//Glide可以直接显示Gif
Glide.with(this).load(gif_url).into(imageview);
//也可以只显示Glide的第一帧作为普通图片使用
Glide.with(this).load(gif_url).asBitmap().into(imageview);
//也可以强制显示Gif,如果目标url不是gif则调用error()方法
Glide.with(this).load(gif_url).asGif().into(imageview);
//还可以显示视频,但目前只支持本地视频
Glide.with(this).load(Uri.fromFile(new File(local_video_path))).into(imageview);

高级功能

//跳过内存缓存,只在磁盘缓存(默认false)
Glide.with(this).load(url).skipMemoryCacge(true).into(imageview);
//跳过磁盘缓存,只在内存缓存(NONE表示什么都不缓存)
Glide.with(this).load(url).diskCacheStrategy(DiskCacheStrategy.NONE).into(imageview);
//显示缩略图(显示原始图像的10%)
Glide.with(this).load(url).thumbnail(0.1f).into(imageview);

下载bitmap

private SimpleTarget<GlideDrawable> mTarget = new SimpleTarget<GlideDrawable>() {
        @Override
        public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable> glideAnimation) {
            //处理resource
        }
    };

private void loadFile(){
    Glide.with(this).load("url").into(mTarget);
}

以上这些只是笔者目前用过的一些功能总结,后面还有更多更高级的功能文章还没涉及到,可以参考github上的项目主页。

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2255次
    • 积分:161
    • 等级:
    • 排名:千里之外
    • 原创:13篇
    • 转载:2篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档