如何同步列表适配器和游标的行ID

时间:2012-10-09 06:09:57

标签: android listadapter

我有一个数据库,我使用列表适配器在listview中填充它。当我从列表视图中删除任何行时,下一行的id不会改变。例如,如果我有id为1到8的行,并且我删除了第7行,则新行id为1,2,3,4,5,6,8。但是在数据库中,行ID是1,2,3,4,5,6,7。 我如何同步这两个,以便我可以使用ListView的onclick事件从数据库中访问正确的元素?

2 个答案:

答案 0 :(得分:0)

您提供的信息不够清楚。您正在从列表视图中删除一行ID 7,而您的表格同时包含第7行和第8行。所以您仍然拥有所需的所有信息。如果您从数据库中删除信息那么你也会删除id为7的行。但是你没有任何问题。你可以根据你的列表项id访问表中的行。

所以可能是你正在搞乱列表项位置和列表项id.Consider id而不是项目的位置。

答案 1 :(得分:0)

只需调用以下内容即可更新ListView:

cursor.requery();
adapter.notifyDataSetChanged();