【发布时间】:2020-11-14 06:05:59
【问题描述】:
我的问题是,如果我尝试删除我的 ListView 上的一个项目,所有数据都将被删除到 listview 和我的 firebase 实时数据库上。我想要的是,如果我长按一个项目,只会删除该项目,而不是ListView 上的所有项目。谢谢你。任何帮助表示赞赏
这是我声明的:
MatkulAdapter matkulAdapter = null;
Matkul matkul;
DatabaseReference root = FirebaseDatabase.getInstance().getReference();
DatabaseReference dbReference = root.child("MataKuliah");
这是删除项目的代码:
listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
Matkul item = matkulAdapter.getItem(position);
matkulAdapter.remove(item);
dbReference.removeValue();
matkulAdapter.notifyDataSetChanged();
return true;
}
});
这是我的数据库:
编辑问题
我也用 .child 尝试了这段代码,但数据只在 ListView 上删除。因此,当我重新打开 ListView 时,数据会返回。
listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
Matkul item = matkulAdapter.getItem(position);
matkulAdapter.remove(item);
dbReference.child(item.getNamaMatkul()).removeValue();
matkulAdapter.notifyDataSetChanged();
【问题讨论】:
标签: java android firebase listview firebase-realtime-database