【发布时间】:2019-03-10 15:48:34
【问题描述】:
在这里我添加了长按监听器,我希望在单击“是”按钮后从 Firebase 中删除我通过长按选择的那个项目,并从 arraylist 中删除,但在这里我的应用程序在单击“是”后停止工作,请帮助我从这个问题中脱颖而出
ListOfFiles.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
final String deleteditem=(String) ListOfFiles.getItemAtPosition(position);
final AlertDialog.Builder builder=new AlertDialog.Builder(FetchFiles.this);
builder.setTitle("Do You Want To Delete File ..? ");
builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
try
{
mRef.child(ID).child(deleteditem).removeValue();
}
catch (Exception e)
{
Toast.makeText(FetchFiles.this, (CharSequence) e, Toast.LENGTH_SHORT).show();
}
}
});
builder.show();
arrayAdapter.remove(deleteditem);
arrayAdapter.notifyDataSetChanged();
return false;
}
});
【问题讨论】:
-
好的。那么这里的问题是什么?你到底卡在哪里了?你的问题现在很模糊。请阅读How to Ask 并使用适当的详细信息编辑您的问题。
-
现在我编辑它并解释具体情况请帮助我
-
Stack Overflow 是一个非常低效的交互式调试器,因此您必须自己执行此操作,然后报告发生的情况。所以在
mRef.child(ID).child(deleteditem).removeValue();上放置一个断点并在调试器中运行应用程序。代码会被触发吗?如果是这样,ID和deleteditem的值是您期望的吗?如果是这样,此行之后的 logcat 输出中是否有任何错误消息?如果这些都没有帮助,请尝试使用硬编码值重现问题。这可以让您知道问题出在处理 UI 的代码中,还是出在数据库代码中。
标签: android firebase listview firebase-realtime-database