使用universal-image-loader加载圆形图片的方法
2016-02-04 10:53
387 查看
1.CircleBitmapDisplayer .java
package com.baxian.qingjia.utils;
import android.graphics.Bitmap;
import com.nostra13.universalimageloader.core.assist.LoadedFrom;
import com.nostra13.universalimageloader.core.display.BitmapDisplayer;
import com.nostra13.universalimageloader.core.imageaware.ImageAware;
import com.nostra13.universalimageloader.core.imageaware.ImageViewAware;
/**
* 显示原型图片的ImageLoader使用的显示器
*/
public class CircleBitmapDisplayer implements BitmapDisplayer {
protected final int margin ;
public CircleBitmapDisplayer() {
this(0);
}
public CircleBitmapDisplayer(int margin) {
this.margin = margin;
}
@Override
public void display(Bitmap bitmap, ImageAware imageAware, LoadedFrom loadedFrom) {
if (!(imageAware instanceof ImageViewAware)) {
throw new IllegalArgumentException("ImageAware should wrap ImageView. ImageViewAware is expected.");
}
imageAware.setImageDrawable(new CircleDrawable(bitmap, margin));
}
}
2.其他地方
DisplayImageOptions options = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.app_icon1) //图片加载时候显示的图片
.showImageOnFail(R.drawable.app_icon1) //图片加载失败时候显示的图片
.showImageForEmptyUri(R.mipmap.app_icon) //图片的url为空的时候显示的图片
.cacheInMemory(true) //是否缓存在内存中
.cacheOnDisk(true) //是否缓存在硬盘中
.displayer(new CircleBitmapDisplayer()) //显示圆形图片
.build();
ImageLoader.getInstance().displayImage(url, iv, options);
package com.baxian.qingjia.utils;
import android.graphics.Bitmap;
import com.nostra13.universalimageloader.core.assist.LoadedFrom;
import com.nostra13.universalimageloader.core.display.BitmapDisplayer;
import com.nostra13.universalimageloader.core.imageaware.ImageAware;
import com.nostra13.universalimageloader.core.imageaware.ImageViewAware;
/**
* 显示原型图片的ImageLoader使用的显示器
*/
public class CircleBitmapDisplayer implements BitmapDisplayer {
protected final int margin ;
public CircleBitmapDisplayer() {
this(0);
}
public CircleBitmapDisplayer(int margin) {
this.margin = margin;
}
@Override
public void display(Bitmap bitmap, ImageAware imageAware, LoadedFrom loadedFrom) {
if (!(imageAware instanceof ImageViewAware)) {
throw new IllegalArgumentException("ImageAware should wrap ImageView. ImageViewAware is expected.");
}
imageAware.setImageDrawable(new CircleDrawable(bitmap, margin));
}
}
2.其他地方
DisplayImageOptions options = new DisplayImageOptions.Builder()
.showImageOnLoading(R.drawable.app_icon1) //图片加载时候显示的图片
.showImageOnFail(R.drawable.app_icon1) //图片加载失败时候显示的图片
.showImageForEmptyUri(R.mipmap.app_icon) //图片的url为空的时候显示的图片
.cacheInMemory(true) //是否缓存在内存中
.cacheOnDisk(true) //是否缓存在硬盘中
.displayer(new CircleBitmapDisplayer()) //显示圆形图片
.build();
ImageLoader.getInstance().displayImage(url, iv, options);
相关文章推荐
- 发送信号
- YII 组件 CActiveForm
- MongoDB运行状态、性能监控,分析
- Using a Plugin
- 百度实习总结
- linux救援模式
- Android NestedScrolling 实战
- iOS 调用私有API
- MMS搜索功能修改
- [转]easyui 全部图标
- Android样式的开发:selector篇
- 我想静静1
- 《设计模式其实很简单》
- iOS-用手机查询手机UDID
- Hadoop学习文章
- sqlserver 中使用sqlcmd 执行几百M的.sql文件
- ___16__C#IO创建Text文件并读取显示
- 封装控件
- Android 自定义命名空间
- GridPasswordView 类似支付宝支付密码输入框