Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何添加删除功能_Android_Sqlite - Fatal编程技术网

Android 如何添加删除功能

Android 如何添加删除功能,android,sqlite,Android,Sqlite,我的应用程序大部分都能正常工作。唯一的问题是,当我想删除单个项目时,会根据需要弹出确认对话框,一旦选择“是”按钮,应用程序仍然不会删除该项目 它得到了正确的汉堡名称。汉堡的名字是“hshz”,数量是4个,价格是6个。日志消息为: 12-29 05:13:04.963 27316-27316/com.example.omar.burgerinventory D/TEST: Burger name is: hshz

我的应用程序大部分都能正常工作。唯一的问题是,当我想删除单个项目时,会根据需要弹出确认对话框,一旦选择“是”按钮,应用程序仍然不会删除该项目

它得到了正确的汉堡名称。汉堡的名字是“hshz”,数量是4个,价格是6个。日志消息为:

12-29 05:13:04.963 27316-27316/com.example.omar.burgerinventory D/TEST: Burger name is: hshz
                                                                        Quantity: 4
                                                                        Price: $6

当我在确认对话框中点击“是”时,输入数据将被完全删除。当我再次单击条目时,应用程序崩溃。这意味着数据被删除了,但由于某种原因列表项仍然出现在列表上。所以我想这里的问题是,我可以删除数据,但不能从列表中清除数据。

删除数据后,使用以下命令从列表中的特定位置删除数据:-

try{
    al_data.remove(particular_position); 
   }catch(Exception e){}
notifyDataSetChanged();

您的问题是因为您正在正确地更改数据库,假设您正在使用数据库,但您并没有更新列表适配器,告诉它其基础数据已更改..它在删除项之前引用了相同的旧数据..您需要在删除项的代码之后从数据库中获取新列表。。 请看一下这个公认的答案。。 .
如果您发布适配器的代码以及删除项目的位置,也会有所帮助。

您可以从本教程中学习一个很好的示例:

从何处删除单个项目?结果应该是什么?在UI中,在数据库中还是什么?您使用哪种代码来完成任务?崩溃发生时,哪个是堆栈跟踪?在删除条目后查看从数据库中重新提取数据,并用数据通知列表。