你好我希望你能理解我,我的英语不好,对不起
,我有一个activity
,其中包含listview
个产品,如果您将点击添加到另一个活动购物车中。到现在为止还挺好。我已经得到了如果你点击一篇文章2次,2个相同的项目将不会添加到购物车中,但现在我想建立一个方法来向我显示相同的项目,如果我按了2次,在数量字段中退出2 ,逻辑上,价格乘以2。
因此,将单击的项目插入购物车活动中:
我创建了一个计算项目被点击次数的变量,(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
有什么想法吗?
答案 0 :(得分:1)
我不确定你在哪里声明'numUds'和'contador'变量,但它们似乎是Activity类的变量,而不是列表中的每个项目。
您似乎有一个名为ItemListView
的类,它代表列表中的每个对象。在该类中,您必须拥有一个属性来跟踪每个对象的单位数(可能是'numUds') 。这样你可以增加count变量,如下所示:
ItemListView item = itemsListVMenuBEBIDAS.get(position);
item.numUds ++;