下面的代码更新gridView,当我删除自动button。
public View getView(int position, View convertView, ViewGroup parent) {
final Item item = getItem(position);
if (convertView == null) {
convertView = LayoutInflater.from(getContext()).inflate(R.layout.custom_button, parent, false);
}
Button itemBtn = (Button)convertView.findViewById(R.id.itemBtn);
itemBtn.setText(item.getName() + " (" + item.getPrice()+")");
itemBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
MainActivity.cart.addItem(item);
}
});
itemBtn.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
remove(item);
notifyDataSetChanged();
return true;
}
});
itemBtn.setLongClickable(true);
return convertView;
}
}
但由于我也需要更新数据库,这是我现在的代码。该view不会自动更新,我还是要改变标签的gridView被更新和button被删除。
itemBtn.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
DBHelper dbHelper = new DBHelper(mActivity);
if (dbHelper.removeData(item.getName(), item.getType()) > 1) {
remove(item);
notifyDataSetChanged();
} else {
Toast.makeText(mActivity, "No such item to delete", Toast.LENGTH_SHORT);
}
dbHelper.close();
return true;
}
});
为什么会这样?
繁花如伊
临摹微笑
相关分类