Android仿硅谷商城實現(xiàn)購物車實例代碼
更新時間:2018年05月03日 14:29:04 作者:ganchuanpu
這篇文章主要介紹了Android購物車編輯實現(xiàn),小編覺得挺不錯的,一起跟隨小編過來看看吧
本文實例為大家分享了Android實現(xiàn)購物車的具體代碼,供大家參考,具體內(nèi)容如下
1_設(shè)置點擊事件和定義狀態(tài)
在GovaffairPager類中
public class GovaffairPager extends BasePager { ............ /** * 編輯狀態(tài) */ private static final int ACTION_EDIT = 0; /** * 完成狀態(tài) */ private static final int ACTION_COMPLETE = 1; @Override public void initData() { ...... //設(shè)置編輯的點擊事件 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){ //變成完成狀態(tài) showDelete(); }else if(action ==ACTION_COMPLETE){ //變成編輯狀態(tài) hideDelete(); } } }); } /** * 隱藏刪除按鈕 */ private void hideDelete() { //1.文本設(shè)置-編輯 btn_cart.setText("編輯"); //2.狀態(tài)設(shè)置編輯 btn_cart.setTag(ACTION_EDIT); //3.數(shù)據(jù)設(shè)置非全選 adapter.checkAll_none(true); adapter.checkAll(); //4.隱藏按鈕顯示,顯示結(jié)算按鈕 btn_delete.setVisibility(View.GONE); btn_order.setVisibility(View.VISIBLE); //5.價格重新計算 adapter.showTotalPrice(); } /** * 顯示刪除按鈕 */ private void showDelete() { //1.文本設(shè)置-完成 btn_cart.setText("完成"); //2.狀態(tài)設(shè)置完成 btn_cart.setTag(ACTION_COMPLETE); //3.數(shù)據(jù)設(shè)置非全選 adapter.checkAll_none(false); adapter.checkAll(); //4.刪除按鈕顯示,隱藏結(jié)算按鈕 btn_delete.setVisibility(View.VISIBLE); btn_order.setVisibility(View.GONE); //5.價格重新計算 adapter.showTotalPrice(); } }
2_在適配器中刪除選中的item
//設(shè)置點擊刪除 btn_delete.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //只是把選擇的刪除 adapter.deleteCart(); } });
在適配器中的代碼
/** * 刪除選中的數(shù)據(jù) */ 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.刪除當前內(nèi)存的 // datas.remove(cart); // //3.刷新數(shù)據(jù) // 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.刪除當前內(nèi)存的 //datas.remove(cart); iterator.remove(); //3.刷新數(shù)據(jù) notifyItemRemoved(position); } } } }
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
Android簡單的利用MediaRecorder進行錄音的實例代碼
MediaRecorder可以進行簡單的錄音,由于操作簡單所以可以用來進行基本的錄音。下面提供一個簡單的例子,記得在Mainfest文件中添加權(quán)限2013-08-08Android編程視頻播放API之MediaPlayer用法示例
這篇文章主要介紹了Android編程視頻播放API之MediaPlayer用法,結(jié)合實例形式分析了基于Android API實現(xiàn)視頻播放功能的多媒體文件讀取、判斷、事件響應及流媒體播放等相關(guān)實現(xiàn)技巧,需要的朋友可以參考下2017-08-08Android Studio下的APP目錄結(jié)構(gòu)詳解
這篇文章主要介紹了AndroidStudio下的APP目錄結(jié)構(gòu),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-05-05Android仿微信@好友功能 輸入@跳轉(zhuǎn)、刪除整塊
這篇文章主要介紹了Android仿微信@好友功能 輸入@跳轉(zhuǎn)、刪除整塊,代碼簡單易懂,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-10-10