Android图片加载
来源:互联网 发布:杭州亿购网络 编辑:程序博客网 时间:2024/05/22 05:28
最近整理一下Android ,将一些常用的东西记录下来
1. Android 图片缓存 - Fresco
GitHub: https://github.com/facebook/fresco
特点:
- 两个内存缓存加上磁盘缓存构成了三级缓存
- 支持流式,可以类似网页上模糊渐进式显示图片
- 对多帧动画图片支持更好,如 Gif、WebP
- 更多样的显示,如圆角、进度条、点击重试、自定义对焦点
- 更多样的加载,如支持 EXIF、全面支持 WebP
- 支持 Android 2.3+
GitHub: https://github.com/facebook/fresco
特点:
2.
Android 图片缓存 - Fresco
picasso是Square公司开源的一个Android图形缓存库,地址http://square.github.io/picasso/,可以实现图片下载和缓存功能。
picasso使用简单,如下
- Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView);
主要有以下一些特性:
- 在adapter中回收和取消当前的下载;
- 使用最少的内存完成复杂的图形转换操作;
- 自动的内存和硬盘缓存;
- 图形转换操作,如变换大小,旋转等,提供了接口来让用户可以自定义转换操作;
- 加载载网络或本地资源;
picasso是Square公司开源的一个Android图形缓存库,地址http://square.github.io/picasso/,可以实现图片下载和缓存功能。
picasso使用简单,如下
- Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView);
主要有以下一些特性:
- 在adapter中回收和取消当前的下载;
- 使用最少的内存完成复杂的图形转换操作;
- 自动的内存和硬盘缓存;
- 图形转换操作,如变换大小,旋转等,提供了接口来让用户可以自定义转换操作;
- 加载载网络或本地资源;
3. Android 图片缓存 -
Android-Universal-Image-Loader
Android-Universal-Image-Loader是一个图片异步加载,缓存和显示的框架。这个框架已经被很多开发者所使用,是最常用的几个Android开源项目之一,主流的应用,随便反编译几个,都可以见到它的身影。淘宝,天猫,Facebook,京东商城等都用到了这个项目。
该项目的Github地址链接: https://github.com/nostra13/Android-Universal-Image-Loader
运行流程:
每一个图片的加载和显示任务都运行在独立的线程中,除非这个图片缓存在内存中,这种情况下图片会立即显示。如果需要的图片缓存在本地,它会开启一个独立的线程队列。如果在缓存中没有正确的图片,任务线程会从网络中获取。
使用步骤:
1、加载图片之前,先要做初始化配置,这个类似很多游戏引擎使用前要做一下初始化,其实只做了一件事,实例化一个全局的ImageLoader对象,同时传入图片加载缓存的配置,ImageLoaderConfiguration封装了基本的配置信息,比如加载图片事用的线程池大小,线程的优先级,内存缓存大小,是否支持同一图片的多尺寸缓存(默认是支持的,可以手动关闭),还有缓存的命名规则等等。
2、配置完后,就可以开始使用了,通过ImageLoader的displayImage()绑定一个图片和ImageView。
displayImage(String uri, ImageView imageView, DisplayImageOptions options)
DisplayImageOptions用于指导每一个Imageloader根据网络图片的状态(空白、下载错误、正在下载)显示对应的图片,是否将缓存加载到磁盘上,下载完后对图片进行怎么样的处理。
该项目的Github地址链接: https://github.com/nostra13/Android-Universal-Image-Loader
运行流程:
每一个图片的加载和显示任务都运行在独立的线程中,除非这个图片缓存在内存中,这种情况下图片会立即显示。如果需要的图片缓存在本地,它会开启一个独立的线程队列。如果在缓存中没有正确的图片,任务线程会从网络中获取。
使用步骤:
1、加载图片之前,先要做初始化配置,这个类似很多游戏引擎使用前要做一下初始化,其实只做了一件事,实例化一个全局的ImageLoader对象,同时传入图片加载缓存的配置,ImageLoaderConfiguration封装了基本的配置信息,比如加载图片事用的线程池大小,线程的优先级,内存缓存大小,是否支持同一图片的多尺寸缓存(默认是支持的,可以手动关闭),还有缓存的命名规则等等。
2、配置完后,就可以开始使用了,通过ImageLoader的displayImage()绑定一个图片和ImageView。
displayImage(String uri, ImageView imageView, DisplayImageOptions options)
DisplayImageOptions用于指导每一个Imageloader根据网络图片的状态(空白、下载错误、正在下载)显示对应的图片,是否将缓存加载到磁盘上,下载完后对图片进行怎么样的处理。
- Android 图片异步加载 加载网络图片
- android加载网络图片,圆形图片加载
- android加载本地图片
- Android图片加载机制
- android 加载图片方式
- android异步加载图片
- android 异步加载图片
- android中加载图片
- android异步加载图片
- android异步加载图片
- android 图片加载进度条
- android加载网络图片
- android 加载图片方式
- Android 异步加载图片
- android 图片加载 方法
- Android 异步加载图片
- Android图片异步加载
- Android图片异步加载
- Json格式
- 事件监听处理
- 黑马程序员——OC语法 block和protocol
- 使用xib创建自定义Cell
- 0基础搭建mybatis环境
- Android图片加载
- GUI小游戏一枚
- Rightmost Digit
- 亦不凡:移动开发者莫错过好时代
- Android性能优化系统分析
- eclipse中serverlocation为灰色,不能修改
- B/S网络架构概述
- 最新OpenCV的配置与安装
- Android高级图片滚动控件,编写3D版的图片轮播器