使用ListView

时间:2016-12-18 20:11:53

标签: android sqlite listview android-sqlite

我遇到了SQLite表和listview的问题。我已经实现了包含表和数据的数据库,并且可以在列表视图中显示它们。我想编辑运行良好的条目。只有订单不如我想要的那么好。

当我想显示column 1column 2订购的条目并在此之后编辑条目时,我有问题,我使用列表中的位置表中的位置( cursor.moveToNext()x次。

现在我用

读出整个表来解决它
SELECT * FROM table ORDER BY column

使用有序数据删除并重新填充表格。然后再次读出并显示它。

但这并不是一种安全的方法。如果应用程序在执行某些工作时崩溃,我可能会丢失数据。有没有一个很好的方法来获取一个参考,我必须在列表视图中编辑而不显示它?或者我应该使用自定义ListView布局和listview的额外数据类,所以我不必编辑整个数据库,只需编辑数据,编辑后我将其重写到数据库中的点?

我没有在SQLite文档中找到类似的功能。但也许我看起来不够深。

谢谢!

1 个答案:

答案 0 :(得分:1)

您不应该删除整个数据库只是为了再次填充它。这似乎是一次又一次地浪费时间阅读和删除。

您应该跟踪属于您要编辑的项目的ID。完成编辑后,通过使用id引用它来更新数据库中的特定项目。

我不确定,它位于“列”列中。但是,如果您希望以两种方式对表进行排序,您可以提供另一个列,其中包含要对其进行排序的属性,或者在订购时使用升序/降序来更改顺序。