Android仿硅谷商城實現購物車實例代碼
更新時間:2018年05月03日 14:29:04 作者:ganchuanpu
這篇文章主要介紹了Android購物車編輯實現,小編覺得挺不錯的,一起跟隨小編過來看看吧
本文實例為大家分享了Android實現購物車的具體代碼,供大家參考,具體內容如下

1_設置點擊事件和定義狀態(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() {
......
//設置編輯的點擊事件
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.文本設置-編輯
btn_cart.setText("編輯");
//2.狀態(tài)設置編輯
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.狀態(tài)設置完成
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);
}
}
}
}
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關文章
Android開發(fā)筆記之:返回鍵的復寫onBackPressed()介紹
本篇文章是對Android中返回鍵的復寫onBackPressed()進行了詳細的分析介紹,需要的朋友參考下2013-05-05
Android中使用tcpdump、wireshark進行抓包并分析技術介紹
這篇文章主要介紹了Android中使用tcpdump、wireshark進行抓包并分析技術介紹,本文講解了下載并安裝tcpdump、pc上安裝wireshark等內容,需要的朋友可以參考下2015-04-04
AndroidStudio代碼達到指定字符長度時自動換行實例
這篇文章主要介紹了AndroidStudio代碼達到指定字符長度時自動換行實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03
Andriod arcgis保存Mapview為圖片的實例代碼
這篇文章主要介紹了Andriod arcgis保存Mapview為圖片的實例代碼 的相關資料,需要的朋友可以參考下2016-03-03

