百度网盘
链接:http://pan.baidu.com/s/1slxNlAt 密码:2no0
前段时间做了个项目,刚刚接触了xutils3.0,还不是很清楚如何使用,今天突然想到一个好办法,做一个尝试,同时写下这篇博文。
个人想法
我的想法是使用一个SimpleAdapter来个listview适配内容,前段时间在使用的时候就做过利用setViewBinder这个方法给SimpleAdapter设置可以适配到图片,不过图片是本地传入一个bitmap的数据,但是没有做过直接传一个url进行加载。
首先是如何设置SimpleAdapter适配bitmap。
/**
*设置simpleAdapter可识别bitmap
*就是现在在simpleAdapter中传入一个bitmap就可以适配到imageView中
*并且显示出来
*/
simpleAdapter.setViewBinder(new ViewBinder() {
public boolean setViewValue(
View view,
Object data,
String textRepresentation) {
//判断是否为我们要处理的对象
if(view instanceof ImageView && data instanceof Bitmap){
ImageView iv = (ImageView) view;
iv.setImageBitmap((Bitmap) data);
return true;
}else
return false;
}
});
在这个方法的基础上修改
想法就是只要适配到View的类型是imageView的同时,data的类型是String,就使用xutils给imageView加载图片
需要补习xutils的用法的戳这里
代码如下:
//在oncreate方法中new一个SimpleAdapter
//getData()是我自己实现的装载ArrayList<Map<String, Object>>mapList的方法
//这个方法返回一个mapList,数据可以加载到listview
simpleAdapter = new SimpleAdapter(MainActivity.this, getData(),
R.layout.word,new String[]{"a"},
new int[]{R.id.iv});
simpleAdapter.setViewBinder(new ViewBinder() {
public boolean setViewValue(
View view,
Object data,
String textRepresentation) {
//判断是否为我们要处理的对象
if(view instanceof ImageView && data instanceof String){
ImageView iv = (ImageView) view;
//使用xutils加载图片到imageView
x.image().bind(iv, (String)data);
return true;
}else
return false;
}
});
image_lv.setAdapter(simpleAdapter);
上述代码均在oncreate方法中实现
直接上图吧
效果图
记录下自己容易忘记的
才不会每次学完用完
又忘记了











网友评论