您好,我希望您能够理解我,我的英语不好,抱歉
,我有一个 activity
,其中包含产品的 listview
,如果您单击 添加到另一个 Activity 购物车。到目前为止,一切都很好。我已经知道,如果您点击一篇文章 2 次,2 个相同的商品将不会添加到购物车中,但现在我想建立一种方法,如果我按 2 次,在数量字段中退出 2,则显示相同的商品,逻辑上价格乘以二。
因此,将单击的商品插入购物车 Activity 中:
我创建了一个变量来计算某个项目被点击的次数,(contador)
case 0:
if (page1 == null)
{
page1 = (ListView) LayoutInflater.from(Local_mostrar_bebidaActivity.this).inflate(R.layout.page_one_viewpager_listview, null);
page1.setAdapter(adapterlistvMenuBEBIDAS);
page1.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
ItemListView item = itemsListVMenuBEBIDAS.get(position);
if (MiPedidoActivity.itemsListVMiPedido.contains(item)) { // <- look for item!
// ... item already in list
Log.i(LOGTAG, "Añadido item "+ contador+" "+ numUds);
++contador;
numUds=contador;
}
else {
MiPedidoActivity.itemsListVMiPedido.add(item);
contador= 1;
numUds=contador;
Log.i(LOGTAG, "Añadido item "+ contador+" "+ numUds);
}});
}
page = page1;
break;
我将产品添加到arraylist
private static ArrayList<ItemListView> obtenerItemsMenuBEBIDAS() {
ArrayList<ItemListView> itemsMenuBEBIDAS = new ArrayList<ItemListView>();
itemsMenuBEBIDAS.add(new ItemListView(1, "Product1", "malta y z.", "drawable/a1","3.10",""+numUds));
itemsMenuBEBIDAS.add(new ItemListView(3, "Cocacola", "Botellin de 22ml","drawable/cocacola_logo","1.75",""+ numUds));
itemsMenuBEBIDAS.add(new ItemListView(4, "Cocacola Zero", "Botellin de 22ml","drawable/cocacola_zero","1.75",""+ numUds ));
return itemsMenuBEBIDAS;
}
(numUds) 是我创建的一个变量,用于了解点击了多少个单元,然后显示相应的 textview
有什么想法吗?
最佳答案
我不确定您在哪里声明“numUds”和“contador”变量,但它们似乎是您的 Activity 类的变量,而不是列表中每个项目的变量。
您似乎有一个名为 ItemListView
的类,它代表列表中的每个对象。在该类中,您必须有一个属性来跟踪每个对象的单位数量(可能是“numUds”)。这样您就可以像这样增加计数变量:
ItemListView item = itemsListVMenuBEBIDAS.get(position);
item.numUds ++;
关于java - android 如何添加购物车数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22156605/