Нет необходимости заново настраивать адаптер, если он уже загружен. Попробуйте этот код в диалоговом окне положительной кнопки вашего AlertDialog()
, которая будет вызываться из вашего onBindViewHolder()
метода в классе вашего адаптера.
<yourViewHolderObject>.deleteIcon.setOnClickListener(new AdapterView.OnClickListener() {
// like: deleteIcon = view.findViewById(R.id.deleteIcon);
@Override
public boolean onClick(View view, int i) {
model=d.get(i);
final String orderno=model.getOrderno();
AlertDialog.Builder msg=new AlertDialog.Builder(CartActivity.this)
.setTitle("Delete Item")
.setMessage("Are you sure delete this item "+model.getItemname())
.setIcon(R.drawable.applogo)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface,int i){
DBLite db=new DBLite(CartActivity.this);
db.DeleteItem(orderno);
// Also delete this item from your current list
listcart.remove(model);
d=new ArrayList<>(db.GetCart(CartActivity.this));
adapterCart=new Cart_Adapter(CartActivity.this,d);
//listcart.setAdapter(adapterCart); // exclude this
adapterCart.notifyDataSetChanged(); // include this
// this line your reload and update your list
txtOrderTotal.setText(String.valueOf(db.GetSum()));
}
}).setNegativeButton("No",null);
msg.create();
msg.show();
return false;
}
});
, дайте мне знать, если это поможет вам. Счастливого кодирования