SimpleAdapter userlistAdapter=new SimpleAdapter(this,getData(),R.layout.userlist_layout,
                new String[]{"name","descr","pic"},
                new int[]{R.id.name_textView,R.id.descr_textView,R.id.user_picview});
        setListAdapter(userlistAdapter);....    private List<Map<String ,Object>> getData(){
        List<Map<String,Object>>list=new ArrayList<Map<String, Object>>();
        Map<String ,Object> map=new HashMap<String, Object>();
        map.put("name","name1");
        map.put("descr","descr1");
        map.put("pic",bitmap);  //bitmap为一个Bitmap对象
        list.add(map);
....
}存在的问题:user_picview无法显示bitmap这个位图。不太清楚Hashmap是否支持把位图对象put进去。请高人告诉我该怎么弄?

解决方案 »

  1.   

    应该是可以的,bitmap是一个对象,Map只是做个映射关系,通过key "pic"得到bitmap对象
      

  2.   

    回2楼:谢谢回复。现在的问题是位图无法显示,白图。而我已经确定得到位图是有数据的,而且如果不put进Map的话可以正常单独显示。
      

  3.   

    public void setViewImage(ImageView v, int value) {
            v.setImageResource(value);
    }
    源码里面的,设置图片是通过“int value”来设置的,这个应该是id。和hashmap没关系,simpadapter没有封装setImageBitmap这个方法。
      

  4.   


    这个应该是问题的根源   传图片的id进去试试
    simpleadpter很多局限,换成baseAdapter就行了
      

  5.   

    谢谢各位热情回复,问题已解决。用的是SimpleAdapter.setViewBinder。