我有一个listview,用于填充sqlite数据库中的数据。当我点击列表视图中的某个项目时,它会转到一个新页面,详细显示列表视图项目。在该页面中有一个删除按钮,单击该按钮可从列表视图中删除该项目,也可从数据库中删除该项目。
怎么可能这样做?
答案 0 :(得分:1)
当您从sqlite填充listview时,请使用sqlite表中记录的记录ID来打包一个数组。 将所选记录ID从该数组传递到listview详细信息页面。 然后在onClick的删除按钮上删除sqlite中的记录并从数据库中重新绘制listview。
答案 1 :(得分:0)
<强>解决方案:强>
1. First solution:
当用户单击listView项目时,您发送下一个活动项目位置,您显示项目详细活动,如果用户按下删除,当用户返回listView活动时,您发送回该位置为listView活动。在这里检查位置是否需要删除此项并刷新listView:
listViewAdapter.remove(listViewAdapter.getItem(position));
listViewAdapter.notifyDataSetChanged();
For send data to detail Activity and for give data from detail
Activity use onActivityResult method, see more information:
Getting a Result from an Activity
2. Second solution:
创建Application类扩展Application并使用它。创建
int selectedItemPosition
boolean itemDeleted
Application类中的字段。当用户单击项目时,将此项目置于此字段并将itemDeleted值设置为false。当用户单击Detail活动中的删除按钮时,您需要将itemDeleted值设置为true,当用户返回listView活动时,如果为true则始终检查itemDeleted值,删除此项并刷新listView。