一般来说,在用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);

 

相关文章:

  • 2021-12-08
  • 2021-12-02
  • 2021-07-16
  • 2021-10-23
  • 2021-10-22
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-03-08
  • 2021-05-22
  • 2022-12-23
  • 2021-12-20
  • 2022-12-23
相关资源
相似解决方案