SmartImageView
来源:互联网 发布:pl sql developer查询 编辑:程序博客网 时间:2024/06/05 20:05
SmartImageView的设计初衷是来取代Android自带的ImgageView组件,另外它还提供了一些附加功能,如:
- 支持通过URL来加载图片;
- 支持从电话簿中加载图片;
- 异步加载图片;
- 图片被缓存在内存,以便下次快速加载显示;
- SmartImageView类可以被很容易扩展成对其它资源的调用;
下载提供的jar包,该项目是开源的,也可以去github下载源码使用
https://github.com/loopj/android-smart-image-view
在做一些需要从网上获取图片的APP时,就难免要做很多处理。
这个项目就是针对这些做了很多处理。
XML添加一个控件
<com.loopj.android.image.SmartImageView android:id="@+id/my_image" />
获取引用
SmartImageView myImage = (SmartImageView) this.findViewById(R.id.my_image);
获取网络图片,这个过程本身就是异步。不必再进行处理,也不必担心线程阻塞
网络获取到的图片都进行了缓存的处理。会在程序的cache目录下建
/web_image_cache/,图片存在这里
上次使用的时候,如果缓存图片已经存在,则不再从网络获取图片
myImage.setImageUrl("http://www.awesomeimages.com/myawesomeimage.jpg");
有一些功能,作者主页并没有说明,但是查看源码可以看到
先看.setImageUrl都有什么方法
1、最普通的一个,直接设置图片地址
// Helpers to set image by URL
public void setImageUrl(String url) {
setImage(new WebImage(url));
}
2、有一个接口,完成下载的时候调用
public void setImageUrl(String url, SmartImageTask.OnCompleteListener completeListener) {
setImage(new WebImage(url), completeListener);
}
3、从字面意思可以看出,是一个备用的资源。如果从网络获取图片失败,则使用备用资源
public void setImageUrl(String url, final Integer fallbackResource) {
setImage(new WebImage(url), fallbackResource);
}
4、类似上面
public void setImageUrl(String url, final Integer fallbackResource, SmartImageTask.OnCompleteListener completeListener) {
setImage(new WebImage(url), fallbackResource, completeListener);
}
5、多了一个loadingResource,就是正在下载的时候展示的图片
public void setImageUrl(String url, final Integer fallbackResource, final Integer loadingResource) {
setImage(new WebImage(url), fallbackResource, loadingResource);
}
6、类似上面
public void setImageUrl(String url, final Integer fallbackResource, final Integer loadingResource, SmartImageTask.OnCompleteListener completeListener) {
setImage(new WebImage(url), fallbackResource, loadingResource, completeListener);
}
SmartImageView确实很方便,能解决大部分问题。有不符合自己要求的地方,还可以根据源码去修改。
感谢作者为我们提供这样的工具
0 0
- SmartImageView
- SmartImageView
- SmartImageView
- SmartImageView
- SmartImageView
- SmartImageView
- SmartImageView
- SmartImageView使用
- 浅谈SmartImageView
- 开源框架:smartImageView
- Android SmartImageView使用实例
- Android SmartImageView源码分析
- smartimageview 框架讲解
- SmartImageView框架使用
- SmartImageView的使用
- 开源项目smartImageView
- SmartImageView框架使用
- Android 自定义smartImageView
- 二分图匹配学习——匈牙利算法模板
- java之集合Collection 详解之4
- nyoj100 1的个数
- MySQL的MyISAM和InnoDB存储引擎表结构
- Poj 2002 Squares(二分&&STL)
- SmartImageView
- hdu 1058 Humble Numbers(dp)
- JAVA 基础 (static关键字)
- 8种Nosql数据库系统对比
- UICollectionView
- linux系统下安装QT5.4
- Python中的布尔类型
- c与c++中struct区别
- 会话管理--session