java主活动在适配器执行操作时不更新内容
我有一个活动,它有一个适配器,在适配器中我有一个加号按钮和一个计数器,当我按下按钮时,计数器不会更新。在这个活动中,我得到了一个总数,类似于:price*count,但它也不会更新。基本上,我在适配器中执行的任何操作都不会通知我的主要活动
我试图公开load main活动方法,但适配器无法访问它
某些适配器类:
public void onBindViewHolder(final CartViewHolder holder, final int position) {
String price = (Integer.parseInt(String.valueOf(listData.get(position).getPret()))) + " RON" ; /* * (Integer.parseInt(listData.get(position).getQuantity())); */
holder.txt_price.setText((price));
holder.txt_cart_name.setText(listData.get(position).getDenumireProdus());
holder.img_cart_count.setText(String.valueOf(listData.get(position).getCantitate()));
if(listData.get(position).getCantitate() < (1))
{
new Database(context).removeFromCart(FirebaseAuth.getInstance().getCurrentUser().getUid(),listData.get(position).getDenumireProdus());
}
holder.minus_cantitate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new Database(context).minusCantitate(FirebaseAuth.getInstance().getCurrentUser().getUid(),listData.get(position).getDenumireProdus());
}
});
holder.plus_cantitate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new Database(context).plusCantitate(FirebaseAuth.getInstance().getCurrentUser().getUid(),listData.get(position).getDenumireProdus());
}
});
}
这是主要的活动加载方法:
private void loadListFood() {
cart = new Database(this).getCarts(FirebaseAuth.getInstance().getCurrentUser().getUid());
adapter = new CartAdapter(cart,this);
recyclerView.setAdapter(adapter);}
# 1 楼答案
您可以使用接口从适配器类调用activity方法。 查看此链接:
https://stackoverflow.com/a/49969478/5482918