一、Glide图片加载框架的简介
谷歌2014年开发者论坛会上介绍的图片加载框架,它让我们在处理不管是网路下载的图片还是本地的图片,减轻了很多工作量,
二、开发步骤:
1、添加链接库
compile 'com.github.bumptech.glide:glide:3.7.0'
2、代码编写,主要特性
Glide.with(context)
.load(imgUrl)
.dontAnimate()
.skipMemoryCache(true)
.diskCacheStrategy(DiskCacheStrategy.ALL)
.placeholder(R.drawable.head_default)
.error(R.drawable.head_default)
.into(imageView);
》当加载网络上的图片时,imgUrl:为图片的地址
》当加载本地的图片时
Glide.with(context)
// .load(imgUrl)
.load(Uri.fromFile(new File(imgUrl)))
》当在网络上加载图片时,由于网络原因,图片未能及时显示,需要显示一个等待图片
.placeholder(R.drawable.head_default)
》当由于各种原因图片加载失败时,显示图片
.error(R.drawable.head_default)
》设置图片加载的动画
// .dontAnimate()//设置图片直接加载,不显示动画
.crossFade()//设置加载图片为淡入淡出
》设置图片的缩放方式
.centerCrop()
.fitCenter()
注:
.centerCrop()让图片适应View的大小
.fitCenter()剪裁缩放,让图片的大小等于小于View的大小,有可能占不满View的大小
》设置图片的缓存
.skipMemoryCache(true)//跳过内存的缓存
.diskCacheStrategy( DiskCacheStrategy.NONE ) //跳过硬盘缓存
-
DiskCacheStrategy.NONE
什么都不缓存 -
DiskCacheStrategy.SOURCE
仅仅只缓存原来的全分辨率的图像 -
DiskCacheStrategy.RESULT
仅仅缓存最终的图像,即降低分辨率后的(或者是转换后的) -
DiskCacheStrategy.ALL
缓存所有版本的图像(默认行为)
》设置图片加载的优先级
.priority( Priority.HIGH )
Priority.LOW
Priority.NORMAL
Priority.HIGH
Priority.IMMEDIATE
》加载GIF动画
.asGif() //判断加载的url资源是否为gif格式的资源
》显示图片
.into(imageView);
android Glide图片加载框架的初探的更多相关文章
-
android glide图片加载框架
项目地址: https://github.com/bumptech/glide Glide作为安卓开发常用的图片加载库,有许多实用而且强大的功能,那么,今天就来总结一番,这次把比较常见的都写出来,但并 ...
-
037 Android Glide图片加载开源框架使用
1.Glide简单介绍 Glide是一款由Bump Technologies开发的图片加载框架,使得我们可以在Android平台上以极度简单的方式加载和展示图片.Glide是一个快速高效的Androi ...
-
深入探索Glide图片加载框架:做了哪些优化?如何管理生命周期?怎么做大图加载?
前言 Glide可以说是最常用的图片加载框架了,Glide链式调用使用方便,性能上也可以满足大多数场景的使用,Glide源码与原理也是面试中的常客. 但是Glide的源码内容比较多,想要学习它的源码往 ...
-
Android之图片加载框架Fresco基本使用(一)
PS:Fresco这个框架出的有一阵子了,也是现在非常火的一款图片加载框架.听说内部实现的挺牛逼的,虽然自己还没研究原理.不过先学了一下基本的功能,感受了一下这个框架的强大之处.本篇只说一下在xml中 ...
-
Android 三大图片加载框架的对比——ImageLoader,Picasso,Glide
一.ImageLaoder介绍 << Universal ImageLoader 是很早开源的图片缓存,在早期被很多应用使用 多线程下载图片,图片可以来源于网络,文件系统,项目文件夹ass ...
-
Android自定义图片加载框架
大神原网址: http://blog.csdn.net/lmj623565791/article/details/41874561 思路: 1. 压缩图片 压缩本地图片: 获得imageview想要 ...
-
Android之图片加载框架Fresco基本使用(二)
PS:最近看到很多人都开始写年终总结了,时间过得飞快,又到年底了,又老了一岁. 学习内容: 1.进度条 2.缩放 3.ControllerBuilder,ControllerListener,Post ...
-
Glide图片加载框架小bug
如上一段加载图片的代码,本身是没问题的,后来测试发现有情况不显示url对应的图片,而一直显示加载超时的图片 修改如下: 将with()方法的上下文context改为图片的imageView.getCo ...
-
添加Glide图片加载框架依赖
1.添加依赖implementation 'com.github.bumptech.glide:glide:4.7.1' 2.放置一个ImageView.3.加载,ivGif是ImageView实例 ...
随机推荐
-
[BZOJ2429][HAOI2006]聪明的猴子(MST)
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=2429 分析:要让最大的最小,所以就是最小生成树上的啦,于是问题就变成了有多少个猴子&g ...
-
JS中数组的操作
1.数组的创建 var arrayObj = new Array(); //创建一个数组 var arrayObj = new Array([size]); //创建一个数组并指定长度,注意不是上限, ...
-
part 设置
RCC_AHBENR 中的17.18.19.20. 分别是PORTA,PORTB.PORTC.PORTD 的时钟使能控制位,要A.B.C.D 端口有效,置位. 如: RCC -> AHBENR ...
-
HubbleDotNet 最新绿色版,服务端免安装,基于eaglet 最后V1.2.8.9版本开发,bug修正,支持一键生成同步表
HubbleDotNet 是一个基于.net framework 的开源免费的全文搜索数据库组件.开源协议是 Apache 2.0.HubbleDotNet提供了基于SQL的全文检索接口,使用者只需会 ...
-
access十万级数据分页
最近的一个项目采用winform+access,但后来发现客户那边的数据量比较大,有数十万条数据.用sql语句进行分页,每次翻页加载都需要8秒钟左右,实在难以忍受. 后来百度了一下,发现一篇文章我的A ...
-
CF 932E Team Work
原题题面 题目大意:求\(\sum\limits_{i=0}^{n}C_{n}^{i}i^{k}\). 我们根据套路\(n^{k}=\sum\limits_{i=0}^{k}C_{n}^{i}i!S_ ...
-
Vue.Js的用户体验优化
一次基于Vue.Js的用户体验优化 一.写在前面 半年以前,第一次在项目上实践VueJs,由于在那之前,没有Angular,avalon等框架的实践经验,所以在Vue的使用上,没有给自己总结出更多 ...
-
java socket 服务端 客户端
Server package com.witwicky.socket.basicsocket; import java.io.IOException; import java.io.InputStre ...
-
【 腾讯敏捷转型No.4 】为什么敏捷团队不要超过15人
早期,腾讯公司的架构是比较简单的.从上至下分别是:公司——商业单元(BU)——部门——组——员工,每个部门基本上就是负责一个大的产品,每个组都是按照专业进行分工和管理,例如:产品组.终端组.后台组.设 ...
-
玩转Masonry JS库来实现瀑布流Web效果
工作项目中需要制作个Mobile上的Web App的展示,方便快捷访问和评价反馈.在展示页面能看到应用展示图,点击进入Web应用.我不是前端开发者,对HTML, CSS, JS这三剑客仅仅是略知一二. ...