Calculer et afficher la somme des produits dans un panier
potawas
Messages postés
1
Statut
Membre
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
Bonjour,
j'essaye de calculer la somme des produits de mon panier grâce à la variable "subTotal", mais il y a quelque chose qui ne va pas dans mon code :
j'essaye de calculer la somme des produits de mon panier grâce à la variable "subTotal", mais il y a quelque chose qui ne va pas dans mon code :
public class CartAdapter extends RecyclerView.Adapter<CartAdapter.CartViewHolder>
{
Context context ;
private List<Cart> cartList;
private double price;
public CartAdapter(Context context, List<Cart> cartList) {
this.context = context;
this.cartList = cartList;
}
@NonNull
@Override
public CartViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View itemView = LayoutInflater.from(context).inflate(R.layout.cart_item_layout, parent, false);
// CartViewHolder viewHolder = new CartViewHolder(itemView, mData);
return new CartViewHolder(itemView);
}
@Override
public void onBindViewHolder(@NonNull CartViewHolder holder, final int position) {
double price = (Double.parseDouble(String.valueOf(cartList.get(position).price)) * Double.parseDouble(cartList.get(position).amount));
holder.cart_menu_amount.setText(new StringBuilder(cartList.get(position).amount).append(" x"));
holder.menu_name.setText(cartList.get(position).name);
// holder.menu_price.setText((new StringBuilder(String.valueOf(cartList.get(position).price))));
holder.menu_price.setText(new StringBuilder(String.valueOf(price)).append(" €"));
double subTotal = 0;
subTotal += (Double.parseDouble(String.valueOf(cartList.get(position).price)) * Double.parseDouble(cartList.get(position).amount));
holder.total_price_cart.setText((int) subTotal);
}
@Override
public int getItemCount() {
return cartList.size();
}
public class CartViewHolder extends RecyclerView.ViewHolder {
TextView menu_name;
TextView menu_price;
TextView cart_menu_amount;
TextView total_price_cart;
public CartViewHolder(View itemView) {
super(itemView);
total_price_cart = (TextView)itemView.findViewById(R.id.total_price_cart);
menu_name = (TextView)itemView.findViewById(R.id.cart_name);
menu_price= (TextView)itemView.findViewById(R.id.cart_price);
cart_menu_amount= (TextView) itemView.findViewById(R.id.cart_menu_amount);
}
}
}
A voir également:
- Calculer et afficher la somme des produits dans un panier
- Comment calculer la moyenne sur excel - Guide
- Ryanair produits interdits en cabine - Guide
- Somme si couleur - Guide
- Formule somme excel colonne - Guide
- Afficher calendrier outlook dans google agenda - Guide
1 réponse
Bonjour,
Avec ton code comme ça :
Tu réinitialises subTotal à chaque fois et tu ne fais la somme que d'une seule valeur, il n'y a pas d'accumulation.
Ça revient exactement au même que ceci :
Après je n'ai pas forcément tout bien compris dans ton code, c'est de la programmation Android ?
Avec ton code comme ça :
double subTotal = 0; subTotal += (Double.parseDouble(String.valueOf(cartList.get(position).price)) * Double.parseDouble(cartList.get(position).amount)); holder.total_price_cart.setText((int) subTotal);
Tu réinitialises subTotal à chaque fois et tu ne fais la somme que d'une seule valeur, il n'y a pas d'accumulation.
Ça revient exactement au même que ceci :
holder.total_price_cart.setText((int) (Double.parseDouble(String.valueOf(cartList.get(position).price)) * Double.parseDouble(cartList.get(position).amount)));
Après je n'ai pas forcément tout bien compris dans ton code, c'est de la programmation Android ?