购物车全选反选,总价,结算

    xiaoxiao2025-05-26  10

    public class Fragment_three extends BaseFragment implements Cotract.View {

    private String url = "small/order/verify/v1/findShoppingCart"; private SelectPresenter selectPresenter; private RecyclerView recyclerView; private CheckBox quanxuan; private TextView all_Price,sum_price_txt; private List<SelectCardBean.Result> result; private SelectCardBean selectCardBean; @Override protected int setView() { return R.layout.fragment_three; } @Override protected void initView(View view) { recyclerView = view.findViewById(R.id.recycleview); quanxuan = view.findViewById(R.id.quanxuan); all_Price = view.findViewById(R.id.all_price); sum_price_txt = view.findViewById(R.id.sum_price_txt); selectPresenter = new SelectPresenter(); selectPresenter.attch(this); selectPresenter.getShowModel(url); //布局管理器 LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getActivity()); linearLayoutManager.setOrientation(LinearLayoutManager.VERTICAL); recyclerView.setLayoutManager(linearLayoutManager); } @Override protected void initData() { } @Override public void getpresenter(String data) { Gson gson = new Gson(); selectCardBean = gson.fromJson(data, SelectCardBean.class); result = selectCardBean.getResult(); final MySelectAdapter mySelectCardAdapter = new MySelectAdapter(result,getActivity()); recyclerView.setAdapter(mySelectCardAdapter); //适配器点击事件 mySelectCardAdapter.setListener(new MySelectAdapter.ShopCallBackListener() { @Override public void callBack(List<SelectCardBean.Result> list) { //定义总价 double totalPrice = 0; //定义勾选商品的数量 int num = 0; //定义所有商品的数量,如果相等就全选 int totalNum = 0; for (int i = 0; i < list.size(); i++) { //商品数量 int count = list.get(i).getCount(); totalNum = totalNum + count; //判断是否选中 if (list.get(i).ischeck){ //商品价格 String price = list.get(i).getPrice(); Double price1 = Double.valueOf(price); num = num + list.get(i).getCount(); //总价 totalPrice = totalPrice + price1*num; } } if (num<totalNum){ //不是全部选中 quanxuan.setChecked(false); }else{ quanxuan.setChecked(true); } all_Price.setText("合计:" + totalPrice); sum_price_txt.setText("去结算(" + num + ")"); } }); quanxuan.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { SelectCheck(quanxuan.isChecked()); mySelectCardAdapter.notifyDataSetChanged(); } }); } private void SelectCheck(boolean checked) { double totalPrice = 0; //定义勾选商品的数量 int num = 0; //定义所有商品的数量,如果相等就全选 int totalNum = 0; for (int i = 0; i < result.size(); i++) { result.get(i).setIscheck(checked); //判断是否选中 if (checked){ //商品数量 int count = result.get(i).getCount(); totalNum = totalNum + count; //商品价格 String price = result.get(i).getPrice(); Double price1 = Double.valueOf(price); //总价 totalPrice = totalPrice + price1*count; } } if (checked){ all_Price.setText("合计:" + totalPrice); sum_price_txt.setText("去结算(" + totalNum + ")"); }else{ all_Price.setText("合计:" + 0); sum_price_txt.setText("去结算(" + 0 + ")"); } }

    }

    最新回复(0)