简单实现购物车逻辑

activity,实现v层返回数据,适配器的点击一级列表和二级列表的监听接口,以及点击+商品和-商品的方法

public class MainActivity extends AppCompatActivity implements IMainView, MyExpandAdapter.ModifyGoodsItemNumberListener, MyExpandAdapter.CheckGroupItemListener {



    private ExpandableListView expandList;
    private MyExpandAdapter adapter;
    private IShooppPrensenter iShooppPrensenter;
    //
    private List<ShoppCarBean.DataBean> list;
    private CheckBox btnCheckAll;
    //购买商品的总数量
    private int totalNum = 0;
    //购买商品的总价
    private double totalPrice= 0.00; //15.55  15  0.55亿
    private TextView tvTotalPrice;
    private TextView btnAmount;
    private TextView btnEditor;


    //默认是false
    private boolean flag;




    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //隐藏actionbar
        getSupportActionBar().hide();


        expandList = findViewById(R.id.expandList);
        //购物车底部栏的全选框
        btnCheckAll = findViewById(R.id.btnCheckAll);
        //合计,计算总价
        tvTotalPrice = findViewById(R.id.tvTotalPrice);
        //结算按钮
        btnAmount = findViewById(R.id.btnAmount);
        //找到编辑控件
        btnEditor = findViewById(R.id.btnEditor);


        //去除默认指示器
        expandList.setGroupIndicator(null);


        //设置适配器
        adapter = new MyExpandAdapter(this);
        expandList.setAdapter(adapter);


        //获取购物车信息
        iShooppPrensenter = new ShooppPresenter(this);
        iShooppPrensenter.getCarInfo("4582");




        //设置商品加减的监听
        adapter.setModifyGoodsItemNumberListener(this);
        //设置商家以及商品是否被选中的监听
        adapter.setCheckGroupItemListener(this);


        btnCheckAll.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {


               isChoosedAll(((CheckBox)view).isChecked());
                //计算商品总价
               statisticsPrice();


            }
        });


        //编辑
        btnEditor.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {


                if(!flag){//编辑 -> 完成\
                    flag = true;
                    btnEditor.setText("完成");
                    adapter.showDeleteButton(flag);
                }else{
                    flag = false;
                    btnEditor.setText("编辑");
                    adapter.showDeleteButton(flag);
                }


            }
        });






    }


       //二级列表默认展开
    private void defaultExpand(){


        for (int i = 0; i < adapter.getGroupCount();++i){
            expandList.expandGroup(i);
        }


    }




    @Override
    public void onSuccess(List<ShoppCarBean.DataBean> data) {


        this.list = data;


        //设置数据
        adapter.setList(list);


        defaultExpand();




    }


    @Overri
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现简单购物车功能,你需要完成以下几个步骤: 1. 创建一个购物车界面,用于展示用户已选的商品和总价。 2. 创建一个商品列表界面,用于展示所有商品的信息和价格。 3. 在商品列表中添加“加入购物车”按钮,用户点击该按钮时,将对应的商品信息添加到购物车中。 4. 在购物车界面中展示用户已选的商品信息和总价,并提供“删除”或“修改数量”等操作。 5. 最后,实现结算功能,将用户的购物车信息传递到支付页面。 下面是一个简单实现过程: 1. 创建购物车界面 - 在 XML 中创建一个 RecyclerView,用于展示用户已选的商品信息。 - 在 Adapter 中实现购物车列表的逻辑,包括展示商品信息和价格,以及提供删除或修改数量等操作。 - 在 XML 中添加一个 TextView,用于展示购物车总价。 2. 创建商品列表界面 - 在 XML 中创建一个 RecyclerView,用于展示所有商品的信息和价格。 - 在 Adapter 中实现商品列表的逻辑,包括展示商品信息和价格,以及添加“加入购物车”按钮的逻辑。 - 在点击“加入购物车”按钮时,将对应的商品信息添加到购物车中。 3. 实现购物车逻辑 - 创建一个单例类 ShoppingCart,用于存储用户已选的商品信息和总价。 - 在点击“加入购物车”按钮时,将对应的商品信息添加到 ShoppingCart 中。 - 在购物车界面中展示用户已选的商品信息和总价,并提供删除或修改数量等操作。 4. 实现结算功能 - 创建一个支付页面,用于展示用户的购物车信息和总价。 - 在购物车界面中添加一个“结算”按钮,点击该按钮时,将用户的购物车信息传递到支付页面。 - 在支付页面中展示用户的购物车信息和总价,并提供支付功能。 以上是一个简单购物车功能实现过程,你可以根据自己的需求进行适当的修改和优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值