【发布时间】:2021-06-13 23:00:07
【问题描述】:
我想计算一次总成本,而不是每次刷产品时都重复一次
android 刷卡避免刷新recyclerview 项目
public class CartAdapter extends RecyclerView.Adapter<CartAdapter.ViewHolder> {
Context context;
List<CartModel> cartModels;
float total;
public CartAdapter(Context context, List<CartModel> cartModels) {
this.context = context;
this.cartModels = cartModels;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
return new ViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.cart_product_layout, parent, false));
}
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
Glide.with(context).load(cartModels.get(position).getProductImg()).into(holder.productImg);
holder.name.setText(cartModels.get(position).getProductName());
holder.price.setText(cartModels.get(position).getProductPrice());
holder.quantity.setText(String.valueOf(cartModels.get(position).getProductQuantity()));
total += Float.parseFloat(String.valueOf(holder.price.getText()));
Intent intent = new Intent("MyCart");
intent.putExtra("total", total);
LocalBroadcastManager.getInstance(context).sendBroadcast(intent);
}
@Override
public int getItemCount() {
return cartModels.size();
}
public class ViewHolder extends RecyclerView.ViewHolder {
ImageView productImg;
TextView name, price, quantity;
public ViewHolder(@NonNull View itemView) {
super(itemView);
productImg = itemView.findViewById(R.id.product_img);
name = itemView.findViewById(R.id.product_name);
price = itemView.findViewById(R.id.product_price);
quantity = itemView.findViewById(R.id.product_quantity);
}
}
}
【问题讨论】:
-
这段代码中到底有什么不符合您的预期?告诉我们共享代码有什么问题。你有什么错误吗?
标签: java android firebase android-recyclerview