一、简介
Glide是一个快速高效的Android图片加载库,注重于平滑的滚动,被Google推荐并广泛运用在Google的开源项目中。Glide提供了易用的API,高性能、可扩展的图片解码管道,以及自动的资源池技术。
Glide 支持拉取,解码和展示视频快照,图片,和GIF动画。Glide的Api是如此的灵活,开发者甚至可以插入和替换成自己喜爱的任何网络栈。默认情况下,Glide使用的是一个定制化的基于HttpUrlConnection的栈,但同时也提供了与Google Volley和Square OkHttp快速集成的工具库。
虽然Glide 的主要目标是让任何形式的图片列表的滚动尽可能地变得更快、更平滑,但实际上,Glide几乎能满足你对远程图片的拉取/缩放/显示的一切需求。
二、使用指南
1、版本说明
Min Sdk Version – 使用 Glide 需要 min SDK 版本 API 14 (Ice Cream Sandwich) 或更高。
Compile Sdk Version – Glide 必须使用 API 27 (Oreo MR1) 或更高版本的 SDK 来编译。
Support Library Version – Glide 使用的支持库版本为 27。
如果你需要使用不同的支持库版本,你需要在你的 build.gradle 文件里去从 Glide 的依赖中去除 “com.android.support”。例如,假如你想使用 v26 的支持库:
dependencies {
implementation ("com.github.bumptech.glide:glide:4.8.0") {
exclude group: "com.android.support"
}
implementation "com.android.support:support-fragment:26.1.0"
}
2、导入
在gradle的配置文件中加入如下配置:
repositories {
mavenCentral()
maven { url 'https://maven.google.com' }
}
dependencies {
compile 'com.github.bumptech.glide:glide:4.8.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0'
}
3、基本用法
多数情况下,使用Glide加载图片非常简单,一行代码足以:
Glide.with(fragment)
.load(myUrl)
.into(imageView);
取消加载同样很简单:
Glide.with(fragment).clear(imageView);
尽管及时取消不必要的加载是很好的实践,但这并不是必须的操作。实际上,当 Glide.with() 中传入的 Activity 或 Fragment 实例销毁时,Glide 会自动取消加载并回收资源。