我正在使用ArrayList<HashMap<String, String>>
来存储我的购物车物品。每次将商品添加到购物车时,商品详情设置为ArrayList
,然后调用setCart()
方法。将ArrayList <HashMap <String,String >>附加到另一个ArrayList <HashMap <String,String >>
我想如果ArrayList
项目已经通过调用setCart()
它不会覆盖以前的车items.Instead它追加ArrayList
已经存在的ArrayList的末尾,则存在。我用ArrayList.add()方法,但它仅适用于HashMap<String,String>
不工作的呼吁addtocart
按钮ArrayList<HashMap<String, String>>
public class AddtoCart extends Application {
ArrayList<HashMap<String, String>> cart;
public void setCart(ArrayList<HashMap<String, String>> data) {
cart = data;
}
public ArrayList<HashMap<String, String>> getCart() {
return cart;
}
public int getSize() {
return cart.size();
}
}
方法,在AddtoCart
private OnClickListener Cart = new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
cart = new ArrayList<HashMap<String, String>>();
HashMap<String, String> map = new HashMap<String, String>();
map.put(TAG_PID, pid);
map.put(TAG_NAME, name);
map.put(TAG_CATEGORY, category);
map.put(TAG_PRICE, price);
map.put(TAG_IMAGE,String.valueOf(resId));
cart.add(map);
AddtoCart obj = (AddtoCart) getApplicationContext();
obj.setCart(cart);
Intent a = new Intent("com.example.pb.VIEWCART");
startActivity(a);
}
};
}
关注一下吧'ArrayList.addAll' – Blackbelt
当你想更新你可以使用.SET,给你想要更新索引一个ArrayList和新的对象 – Joh