本文實例為大家分享了Android實現購物車的具體代碼,供大家參考,具體內容如下
	
1_設置點擊事件和定義狀態
在GovaffairPager類中
public class GovaffairPager extends BasePager { ............  /** * 編輯狀態 */ private static final int ACTION_EDIT = 0; /** * 完成狀態 */ private static final int ACTION_COMPLETE = 1;  @Override public void initData() { ......  //設置編輯的點擊事件 btn_cart.setTag(ACTION_EDIT); btn_cart.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { int action = (int) btn_cart.getTag(); if(action ==ACTION_EDIT){ //變成完成狀態 showDelete(); }else if(action ==ACTION_COMPLETE){ //變成編輯狀態 hideDelete(); } } }); }  /** * 隱藏刪除按鈕 */ private void hideDelete() { //1.文本設置-編輯 btn_cart.setText("編輯"); //2.狀態設置編輯 btn_cart.setTag(ACTION_EDIT); //3.數據設置非全選 adapter.checkAll_none(true); adapter.checkAll(); //4.隱藏按鈕顯示,顯示結算按鈕 btn_delete.setVisibility(View.GONE); btn_order.setVisibility(View.VISIBLE); //5.價格重新計算 adapter.showTotalPrice(); }  /** * 顯示刪除按鈕 */ private void showDelete() { //1.文本設置-完成 btn_cart.setText("完成"); //2.狀態設置完成 btn_cart.setTag(ACTION_COMPLETE); //3.數據設置非全選 adapter.checkAll_none(false); adapter.checkAll(); //4.刪除按鈕顯示,隱藏結算按鈕 btn_delete.setVisibility(View.VISIBLE); btn_order.setVisibility(View.GONE); //5.價格重新計算 adapter.showTotalPrice(); }}2_在適配器中刪除選中的item
//設置點擊刪除btn_delete.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //只是把選擇的刪除 adapter.deleteCart(); }});在適配器中的代碼
/** * 刪除選中的數據 */public void deleteData() {// if(datas != null && datas.size() >0){//  for(int i=0;i<datas.size();i++){//  ShoppingCart cart = datas.get(i);//  if(cart.isCheck()){//   //1.刪除本地緩存的//   cartProvider.deleteData(cart);//   //2.刪除當前內存的//   datas.remove(cart);//   //3.刷新數據//   notifyItemRemoved(i);//   i--;//  }//  }// } if(datas != null && datas.size() >0){ for(Iterator iterator = datas.iterator();iterator.hasNext();){  ShoppingCart cart = (ShoppingCart) iterator.next();  if(cart.isCheck()){  //這行代碼放在前面  int position = datas.indexOf(cart);  //1.刪除本地緩存的  cartProvider.deleteData(cart);  //2.刪除當前內存的  //datas.remove(cart);  iterator.remove();  //3.刷新數據  notifyItemRemoved(position);  } } }}以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。
新聞熱點
疑難解答