android购物车分类,Android-----购物车(包含侧滑删除,商品筛选,商品增加和减少,价格计算,店铺分类等)...

电商项目中常常有购物车这个功能,做个很多项目了,都有不同的界面,选了一个来讲一下。

主要包含了 店铺分类,侧滑删除,商品筛选,增加和减少,价格计算等功能。

看看效果图:

e534a3d5413638bcf978bb5077b06630.png

21789fb89c83da1624ea13b7b33bb1fa.png

252817463054db6cefb1a18cb894b97d.png

重要代码:

private void showExpandData(){

cartExpandAdapter=new CartExpandAdapter(this,cartExpandablelistview,cartInfo.getData());

cartExpandablelistview.setAdapter(cartExpandAdapter);

int intgroupCount = cartExpandablelistview.getCount();

for (int i=0; i

{

cartExpandablelistview.expandGroup(i);

}

/**

* 全选

*/

cartExpandAdapter.setOnItemClickListener(new OnViewItemClickListener() {

@Override

public void onItemClick(boolean isFlang, View view, int position) {

cartInfo.getData().get(position).setIscheck(isFlang);

int length=cartInfo.getData().get(position).getItems().size();

for (int i = 0; i < length; i++) {

cartInfo.getData().get(position).getItems().get(i).setIscheck(isFlang);

}

cartExpandAdapter.notifyDataSetChanged();

showCommodityCalculation();

}

});

/**

* 单选

*/

cartExpandAdapter.setOnClickListenterModel(new OnClickListenterModel() {

@Override

public void onItemClick(boolean isFlang, View view,int onePosition, int position) {

cartInfo.getData().get(onePosition).getItems().get(position).setIscheck(isFlang);

int length=cartInfo.getData().get(onePosition).getItems().size();

for (int i = 0; i < length ; i++) {

if (! cartInfo.getData().get(onePosition).getItems().get(i).ischeck()){

if (!isFlang){

cartInfo.getData().get(onePosition).setIscheck(isFlang);

}

cartExpandAdapter.notifyDataSetChanged();

showCommodityCalculation();

return;

}else {

if (i== ( length-1)){

cartInfo.getData().get(onePosition).setIscheck(isFlang);

cartExpandAdapter.notifyDataSetChanged();

}

}

}

showCommodityCalculation();

}

});

cartExpandAdapter.setOnClickDeleteListenter(new OnClickDeleteListenter() {

@Override

public void onItemClick(View view, int onePosition, int position) {

Toast.makeText(MainActivity.this,"删除操作",Toast.LENGTH_LONG).show();

}

});

/***

* 数量增加和减少

*/

cartExpandAdapter.setOnClickAddCloseListenter(new OnClickAddCloseListenter() {

@Override

public void onItemClick(View view, int index, int onePosition, int position,int num) {

if (index==1){

if (num>1) {

cartInfo.getData().get(onePosition).getItems()

.get(position).setNum((num - 1));

cartExpandAdapter.notifyDataSetChanged();

}

}else {

cartInfo.getData().get(onePosition).getItems().get(position).setNum((num + 1));

cartExpandAdapter.notifyDataSetChanged();

}

showCommodityCalculation();

}

});

}

这是我项目中用到的购物车,基本的功能都有了的。

有需要的小伙们,可以参考一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值