picasso-强大的Android图片下载缓存库
来源:互联网 发布:程序员交流 编辑:程序博客网 时间:2024/06/07 17:36
原文出处:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/0731/1639.html
【很多代码-----在该文中么有----参考网址上的】
picasso是Square公司开源的一个Android图形缓存库,地址http://square.github.io/picasso/,可以实现图片下载和缓存功能。仅仅只需要一行代码就能完全实现图片的异步加载:
Api看起来非常独特,是吧。
Picasso不仅实现了图片异步加载的功能,还解决了android中加载图片时需要解决的一些常见问题:
1.在adapter中需要取消已经不在视野范围的ImageView图片资源的加载,否则会导致图片错位,Picasso已经解决了这个问题。
2.使用复杂的图片压缩转换来尽可能的减少内存消耗
3.自带内存和硬盘二级缓存功能
特性以及示例代码:
ADAPTER中的下载:Adapter的重用会被自动检测到,Picasso会取消上次的加载
图片转换:转换图片以适应布局大小并减少内存占用
将CropSquareTransformation的对象传递给transform方法即可。
Place holders-空白或者错误占位图片:
picasso提供了两种占位图片,未加载完成或者加载发生错误的时需要一张图片作为提示。
如果加载发生错误会重复三次请求,三次都失败才会显示erroPlace holder
资源文件的加载:除了加载网络图片picasso还支持加载Resources, assets, files, content providers中的资源文件。
下面是picasso源码的解析(不看不影响使用)
Cache,缓存类
Action
有了加载任务,具体的图片下载与解析是在哪里呢?这些都是耗时的操作,应该放在异步线程中进行,就是下面的BitmapHunter。
BitmapHunter
Dispatcher任务调度器
外部调用的是dispatchXXX方法,然后通过handler将请求转换到对应的performXXX方法。
例如生成Action以后就会调用dispather的dispatchSubmit()来请求执行,
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- picasso-强大的Android图片下载缓存库
- 用友nc65 uap开发跳转编辑状态自动赋值参照值无法带出解决办法
- 设计模式(一)面向对象的六大原则
- Python整数对象相关
- mac ox 终端命令大全
- List相同字段相加的JAVA实现
- picasso-强大的Android图片下载缓存库
- 反对迭代0:停止拖延,开始迭代
- jQuery 插件autocomplete 应用
- OSHashTable 分析
- 大于号、小于号、单引号 转义字符
- jsp中<%%> 与<%!%> , <%%>与<%=%>的区别是什么? - u013305082的专栏 - 博客频道 - CSDN.NET
- eclipse插件之Findbugs、Checkstyle、PMD安装及使用
- 使用angular2的[(ngModel)]
- hive语句 partition(dt=substr('2016-12-01',1,7))取分区问题