如何将位图和字符串插入HashMap

时间:2015-04-20 09:40:49

标签: android bitmap hashmap

好吧,我一直在尝试将Web中的图像插入到hashmap中。当我使用可绘制文件中的图像时,一切正常。但是,当我尝试使用Bitmap对象时,字符串会在add中向我提出此错误:The method add(HashMap<String,String>) in the type ArrayList<HashMap<String,String>> is not applicable for the arguments (HashMap<String,Object>)

HashMap<String, Object> map = new HashMap<String, Object>();

                    map.put(TAG_ID_AU, id);
                    map.put(TAG_NAME, name);
                    map.put(TAG_BIRTHDAY_DATE, birthday_date);
                    map.put(TAG_IMAGE, myBitmap);
                    map.put(TAG_DAY_LEFT, day_left);

                    productsList.add(map);

myBitmapBitmap,其余的都是字符串。

EDITED

对不起这个问题并坦克你的答案,现在我可以把我的修改适配器中的网址图像,我只需要解决该错误。

2 个答案:

答案 0 :(得分:1)

虽然您尚未发布相关代码,但从错误消息中可以很容易地判断出ArrayList的类型是错误的。它应该是

ArrayList<HashMap<String,Object>> productsList

而不是当前的

ArrayList<HashMap<String,String>> productsList

答案 1 :(得分:1)

创建你的对象

public class myProduct {
    private String id;
    private String name;
    private String mybitmap; 
public myProduct(String id,String name,Bitmap mybitmap){
    setId(id);
    setName(name);
    setBitmap(mybitmap); 
}
    public String getName(){
        return this.name;
    }
    public  void setName(String  name){
        this.name=name;
    }
    public String getId(){
        return this.id;
    }
    public void setId(String id){
        this.id =id;
    }
    public void setBitmap(Bitmap mybitmap){
        this.mybitmap=mybitmap;
    }
    public Bitmap getBitmap(){
        return this.mybitmap;
    }

}

之后将其添加到您的活动中

List<myProduct> list=new ArrayList<myProduct>();
myProduct mp=new myProduct("0","name..",Bitmap);
list.add(mp);

您可以像这样访问您的数据:

String name=list.get(int).getName();