Android图片加载框架Glide的基本使用
一直以来图片加载都是让Android程序员头疼的问题,一不小心就各种OOM,然后就是各种*。。。带着一种膜拜大神的初衷,翻了下郭大神的博客,发现大神介绍的一款图片加载框架---Glide,原文在此。遂,阅之,coding之,然后写下这个博客。
打开github,看到他目前的版本还是3.7,在Android Studio的gradle中添加相关依赖。
dependencies {
compile 'com.github.bumptech.glide:glide:3.7.0'
}
这样Glide就被添加到了项目中,首先来尝试下他的网络加载能力(记得添加相应网络权限)。百度随意一张图片,然后copy地址,代码如下:
String url = "https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=928861582,28679776&fm=23&gp=0.jpg";
Glide.with(this).load(url).into(imageview);
效果如下:
是不是很简单,但是因为是网络加载图片,所以相应的延迟还是很大的,在加载过程中很长一段时间ImageView部分显示的是个空白,这就必然导致了用户体验会特别差,但是
Glide提供了强大的API,这时候只需要在load与into方法添加相应的占位图就行,修改代码如下:
Glide.with(this).load(url).placeholder(R.drawable.waitting).into(imageview);
当点击完按钮之后,ImageView首先加载的是占位图资源,待网络资源加载完毕就开始加载目标资源,但是连续点击按钮重新加载图片,点几次之后占位图就不再显示而是直接
展示目标图片,这是因为Glide强大的缓存机制已经将图片缓存下载了,所以没来得及加载占位图就已经完成了对目标图片的加载。当然,相应的既然能够在load与into之间添
加相应的占位图,那么在这之间做容错性处理也是可行的,当需要加载的图片出现异常时候,显示一张赏心悦目的图片给用户并告诉他相应结果是不是比传统网页的404要强很多呢。
Glide.with(this).load(url).placeholder(R.drawable.waitting).error(R.drawable.error).into(imageview);
这只是Glide最基本的加载网络图片的使用,他的功能绝非仅仅如此,他还能够加载本地图片、应用资源、二进制流、Uri对象等等。同时还能够指定图片的格式以及大小等等等等。
第一次写,很多地方借鉴了郭霖郭大神的博客内容,非常感谢他老人家的无私奉献。。。。
上一篇: Android开发-DataBinding基本使用
下一篇: 【TSCTF-J 2019】relax
推荐阅读
-
Android框架Volley之利用Imageloader和NetWorkImageView加载图片的方法
-
Android基于Glide v4.x的图片加载进度监听
-
Android将Glide动态加载不同大小的图片切圆角与圆形的方法
-
Android框架Volley之利用Imageloader和NetWorkImageView加载图片的方法
-
Android图片加载框架之Glide 4的用法介绍
-
Android网络框架的优缺点、图片加载框架等基础知识讲解
-
Android框架Volley使用:ImageRequest请求实现图片加载
-
Android图片加载框架解析之Glide的自定义模块功能讲解
-
Android 图片加载框架 Glide4.x
-
Android使用AsyncTask加载图片的操作流程