一般情况下使用SimpleAdapter来作为ListView适配器的时候,使用的图片都是在drawable目录下的图片id加载,即R.drawable.XX。实际开发中经常都是从服务器获取图片资源,得到的图片类型可能是Drawable或者Bitmap类型。
加载其他类型的图片主要用到的是SimpleAdapter中的ViewBinder类。
使用Drawable类型的图片:
SimpleAdapter adapter = new SimpleAdapter(getActivity(), getSimpleData(), R.layout.fragment_two_item, str, id);
this.setListAdapter(adapter);
adapter.setViewBinder(new ViewBinder() {
@Override
public boolean setViewValue(View view, Object data, String arg2) {
if(view instanceof ImageView && data instanceof Drawable){
ImageView iv = (ImageView)view;
iv.setImageDrawable((Drawable)data);
return true;
}else{
return false;
}
}
});
使用Bitmap类型的图片: <