首页 > 代码库 > Android用simpleAdapter来直接显示bitmap图片

Android用simpleAdapter来直接显示bitmap图片

一般来说,在用simpleAdapter适配器时,我们所要显示的图片资源都是程序内的本地资源,而且是以资源的ID(Resources ID)形式来表现的。 
map.put("img", R.drawable.i3); 
但是有时候我们需要用这个适配器来显示网上的远程图片时,该如何直接显示呢?方法是实现ViewBinder()这个接口,在里面定义数据和视图的匹配关系 

adapter=new SimpleAdapter(this,                 data,// 数据源                R.layout.activity_new_product_item,// 显示布局                 new String[] { "itemImage", "itemText", "itemNewPrice", "itemOldPrice" },                 new int[] { R.id.itemImage, R.id.itemText, R.id.newprice, R.id.oldprice });        adapter.setViewBinder(new ViewBinder() {                        @Override            public boolean setViewValue(View view, Object data,                    String textRepresentation) {                if( (view instanceof ImageView) & (data instanceof Bitmap) ) {                      ImageView iv = (ImageView) view;                      Bitmap bm = (Bitmap) data;                      iv.setImageBitmap(bm);                      return true;                      }                      return false;             }        });        gridView.setAdapter(adapter);

 

Android用simpleAdapter来直接显示bitmap图片