购物车(商家全选价格联动)

商品适配器

		 // 定义接口,实现商家全选以后和价格,总数联动
		    private OnCallBackListener mOnCallBackListener;
		    public void setOnCallBackListener(OnCallBackListener mOnCallBackListener){
		        this.mOnCallBackListener=mOnCallBackListener;
		    }
		    public interface OnCallBackListener{
		        void changeData(List<ShopBean.DataBean> list);
		    }
                 在onBindViewHolder方法中商家全选中
           if (mOnCallBackListener!=null){
                    // 回传给调用页面
                    mOnCallBackListener.changeData(list);
                }

主界面调用接口

 // 单独商家的总价
        shopCarAdapter.setOnCallBackListener(new ShopCarAdapter.OnCallBackListener() {
            @Override
            public void changeData(List<ShopBean.DataBean> list) {
                     float allPrice=0;
                     int allNum=0;
                for (int i = 0; i < list.size(); i++) {
                        boolean ischecked = list.get(i).isChecked();
                        if (ischecked){//商家选中
                            List<ShopBean.DataBean.ListBean> listC = list.get(i).getList();
                            for (int j = 0; j < listC.size(); j++) {
                                float price=listC.get(i).getPrice();
                                int num=listC.get(i).getNum();
                                allPrice=allPrice+price*num;
                                allNum=allNum+num;
                            }
                        }
                  }
                mTvPrice.setText(allPrice + "");
                mTvMoney.setText("去结算(" + allNum + ")");
             }
        });

猜你喜欢

转载自blog.csdn.net/Ye_DaXian/article/details/89057151