好吧,我一直在尝试将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);
myBitmap
是Bitmap
,其余的都是字符串。
EDITED
对不起这个问题并坦克你的答案,现在我可以把我的修改适配器中的网址图像,我只需要解决该错误。
答案 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();