使用Glide加载Android图片
一、概述
Glide是一个在Android端非常好的图片缓冲工具,总体上来说,他有以下优点
- 使用简单
- 自适应程度高
- 支持常见的图片格式,如jpg,png等
- 支持多种数据源,网络,本地,资源,Assets等
- 高效的缓存策略,支持Memory和Disk图片缓存策略,默认Bitmap格式采用RGB_565内存使用至少减少一半
- 生命周期集成 根据Activity/Fragment生命周期自动管理请求
- 高效处理Bitmap 使用Bitmap Pool使Bitmap复用,主动调用recycel回收需要回收的Bitmap,减少系统回收的压力
二、使用方法
步骤1、在build.gradle的dependencies中添加如下代码:
compile "com.github.bumptech.glide:glide:3.7.0"
步骤2、在代码中直接使用即可:
fun onclick_loadImageView(v: View) {
Glide.with(this)
.load(IMG_URI)
.placeholder(R.drawable.loading)
.error(R.drawable.error)
.into(img)
}
注意,因为我们这个地方的IMG_URI是网络图片,所以还需要在AndroidManfiest中设置网络访问权限
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
三、Glide方法总结
总的来说,Glide常见的方法如下
- with() 与生命周期相关。所以这个时候用activity还是用application context就需要考虑清楚
- load 加载资源路径
- into 将图片加载到的imageView
以上三个方法是最基础的方法,下面是一些扩展方法
- placeholder 加载中的图片
- error 加载失败后显示的占位图
- thumbnail 缩略图支持。
- override 设置加载尺寸
- asGif 强制转换为gif
- diskCacheStrategy 设置图片缓存策略
- transform 切图,例如实现圆角图片等
本文所有代码已经上传至Github:https://github.com/YanYoJun/DangerousPermission
转载请注明原文地址:http://www.cnblogs.com/yanyojun/p/8016294.html
使用Glide加载Android图片的更多相关文章
- glide 加载圆角图片
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABEIAAAD3CAIAAACW6Gb7AAAgAElEQVR4nOy9e1QbZf74//zO4XvOYz
- Glide加载圆形图片第一次只显示默认图片
Glide加载圆形图,又设置了默认图,很多时候第一次加载的时候只显示默认图.下面的方案可以解决.\ Glide.with(AudioDetailActivity.this) .load(cover) ...
- Android使用glide加载.9图片的方法
我们在开发过程中会经常使用.9图片, 因为它可以使图片拉伸的时候,保证其不会失真. 而我们把.9图片放在服务器端,通过glide直接加载,会报错. 我们的解决方法是 通过sdk的aapt工具 把.9图 ...
- Glide加载圆形图片
方案1:经过验证,可以完美实现 Glide.with(context).load(url).asBitmap().centerCrop().into(new BitmapImageViewTarge ...
- 使用Glide加载圆角图片
//设置图片圆角角度 RoundedCorners roundedCorners= new RoundedCorners(6); //通过RequestOptions扩展功能,override采样率, ...
- Android Glide加载图片时转换为圆形、圆角、毛玻璃等图片效果
Android Glide加载图片时转换为圆形.圆角.毛玻璃等图片效果 附录1简单介绍了Android开源的图片加载框架.在实际的开发中,虽然Glide解决了快速加载图片的问题,但还有一个问题悬 ...
- Android Glide 加载图片
0.借鉴文章地址:http://blog.csdn.net/zivensonice/article/details/51835802 和 http://www.cnblogs.com/zhaoyanj ...
- Android使用Glide加载https链接的图片不显示的原因
平时我们使用Glide加载http网址的图片的时候,图片可以正常加载出来,但是如果服务器端加上了安全认证,当加载自签名的https图片的时候就会报如下错误(证书路径验证异常). 我们如果不修改Glid ...
- Android笔记之使用Glide加载网络图片、下载图片
Glide简介 不想说太多,真的很方便:P)可以节省我不少时间 GitHub地址:https://github.com/bumptech/glide 加载网络图片到ImageView Glide.wi ...
随机推荐
- VS创建Web项目提示配置IISExpress失败
开发服务器VS2013,新建Web项目提示: 打开Web项目提示: 解决方法:控制面板,找到IISExpress,右键 选择修复,解决问题..
- How can I pass data from Flask to JavaScript in a template?
https://stackoverflow.com/questions/11178426/how-can-i-pass-data-from-flask-to-javascript-in-a-templ ...
- create database 默认utf-8
CREATE DATABASE IF NOT EXISTS dbname DEFAULT CHARSET utf8 COLLATE utf8_general_ci; 这是sql语句 CREATE TA ...
- virtualbox安装完系统之后重新启动重新进入安装界面原因
安装完成之后如果重新启动出现卡死的情况,直接关闭掉virtualbox,然后重新启动. 在这里记得完成安装后再改下设置,把Storage里的IDE控制器设为没有盘片,否则下次启动时又是安装界面.
- 修改 Appdelegate 文件名为添加项目前缀的方法
本文假设你的项目是 Test, 那么为了给你的 Appdelegate 文件保持按照项目名为前缀 ,就需要对 Appdelegate 文件进行修改前缀名. 技巧分享:将开发中的 Appdelegate ...
- context:property-placeholder作用
原文地址:http://blog.sina.com.cn/s/blog_a0de59cf0101dqeb.html spring去加载,这个元素的写法如下: <context:property- ...
- 2-12 tensorflow运算原理
#opencv tensorflow #类比 语法 api 原理 #基础数据类型 运算符 流程 字典 数组 import tensorflow as tf #data1 = tf.constant(2 ...
- python3.6 + selenium2.53.1 查询数据库并将返回的内容中每一行的内容转换成class对象
环境: win10 python3.6 selenium2.53.1 准备工作:先安装pymysql python2.x链接数据库使用MySQLdb,而python3.x链接数据库使用pymysql ...
- sql server 分组排序
环境: sql server 2012 语法 select ROW_NUMBER() over(partition BY 分组字段 order by 排序字段),* as rowNums from 表 ...
- zoj 2587 Unique Attack【最小割】
拆点拆魔怔了 直接按照原图建就行,这里有个小技巧就是双向边的话不用按着板子建(u,v,c)(v,u,0)(v,u,c)(u,v,0),直接建(u,v,c)(v,u,c)会快十倍!800ms->8 ...