共计 2177 个字符,预计需要花费 6 分钟才能阅读完成。
前言
图片加载在 Android 开发项目中是必不可少的,为了降低开发周期和难度,我们经常会选用一些图片加载的开源库,而 Android 发展到现在图片加载开源库也越来越多了,下面介绍 Glide 开源图片加载库.
简介
Glide 是由 Google 开源的一个图片加载库, 是一款快速高效的 Android 开源媒体管理和图像加载框架,它将媒体解码,内存和磁盘缓存以及资源池包装成简单易用的界面.
功能介绍以及基础使用
1. 配置
在 Project 的 gradle 添加依赖
repositories {
mavenCentral()
google()
}
在 Module 的 gradle 添加依赖
dependencies {
implementation ‘com.github.bumptech.glide:glide:4.9.0’
annotationProcessor ‘com.github.bumptech.glide:compiler:4.9.0’
}
添加网络权限
<uses-permission android:name=”android.permission.INTERNET”/>
基本使用
ImageView mImageView = (ImageView) findViewById(R.id.ImageView);
String Url = “http://***********”;
Glide .with(this)
.load(Url)
.into(targetImageView);
2. 基本功能介绍 & 使用
图片的异步加载(基础功能)
ImageView mImageView = (ImageView) findViewById(R.id.ImageView);
String Url = “http://**********”;
//Glide 使用了流式接口的调用方式
Glide.with(context).load(Url).into(targetImageView);
设置图片加载尺寸
Glide.with(this).load(imageUrl).override(500, 500).into(imageView);
设置加载中以及加载失败图片
Glide
.with(this)
.load(imageUrl)
.placeholder(R.mipmap.ic_launcher).error(R.mipmap.ic_launcher).into(imageView);
设置加载动画
Glide.with(this).load(imageUrl).animate(R.anim.item_alpha_in).into(imageView);
设置要加载的内容 (图文混排)
Glide.with(this).load(imageUrl).centerCrop().into(new SimpleTarget<GlideDrawable>() {
@Override
public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable> glideAnimation) {
imageView.setImageDrawable(resource);
}
});
多样式的媒体加载
Glide
.with(context)
.load(imageUrl);
.thumbnail(0.1f);// 设置缩略图支持:先加载缩略图 (原图像的 10%) 然后在加载全图
素。
.asBitmap()// 显示 gif 静态图片
.asGif();// 显示 gif 动态图片
.into(imageView);
设置磁盘缓存策略
Glide.with(this).load(imageUrl).diskCacheStrategy(DiskCacheStrategy.ALL).into(imageView);
// 缓存参数说明
// DiskCacheStrategy.NONE:不缓存任何图片,即禁用磁盘缓存
// DiskCacheStrategy.ALL:缓存原始图片 & 转换后的图片(默认)
// DiskCacheStrategy.SOURCE:只缓存原始图片(原来的全分辨率的图像,即不缓存转换后的图片)
// DiskCacheStrategy.RESULT:只缓存转换后的图片(即最终的图像:降低分辨率后 / 或者转换后,不缓存原始图片
清理缓存
Glide.get(this).clearDiskCache();// 清理磁盘缓存 需要在子线程中执行
Glide.get(this).clearMemory();// 清理内存缓存 可以在 UI 主线程中进行
生命周期集成
Glide.with(Context context)// 绑定 Context
.with(Activity activity);// 绑定 Activity
.with(FragmentActivity activity);// 绑定 FragmentActivity
.with(Fragment fragment);// 绑定 Fragment
至此,Glide 图片加载库基础使用就讲解完毕了, 感谢阅读
欢迎关注作者 darryrzhong, 更多干货等你来拿哟.
请赏个小红心!因为你的鼓励是我写作的最大动力!
更多精彩文章请关注
个人博客:darryrzhong
掘金
简书
SegmentFault
慕课网手记