我可以通过以下代码长按选定的商品,从购物清单中删除该商品
listcart.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> adapterView, View view, int i, long l) {
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);
d=new ArrayList<>(db.GetCart(CartActivity.this));
adapterCart=new Cart_Adapter(CartActivity.this,d);
listcart.setAdapter(adapterCart);
txtOrderTotal.setText(String.valueOf(db.GetSum()));
}
}).setNegativeButton("No",null);
msg.create();
msg.show();
return false;
}
});
我想通过单击按钮删除此项目。我该如何为此目的定制代码。
在项目布局内创建一个按钮。在您的Cart_Adapter适配器类中获取其引用,并在适配器的getView()方法(如果它是BaseAdapter或ArrayAdapter)中进行此操作。但是,如果它是recyclerview适配器,则将其写在onBindView()方法的内部:
viewholder.deleteButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// write code here to delete item and refresh adapter
}
});