2017-06-28 60 views
-1

我有数据库充满了我从中填充的数据recyclerview。当用户开始在recyclerview项目中的一个上工作时,我将其移动到顶部notifyItemMoved(),因此用户如果想要输入数据,删除,管理等,则不必向下滚动。但是当然,当应用程序关闭并再次打开时项目返回到原来的位置,所以它不在顶部,因为我没有保存最后的位置。所以我的问题是,我没有找到答案,我怎么能重新排序数据库内的数据,所以下一次当数据从上次工作项目开始填充recyclerview还是有另一种更好的方法呢? 我试图从数据库更新id,但这并没有帮助同样的情况发生项目处于第一个位置。谢谢在SQLite中重新排序数据

+0

讨厌的时候downvote没有解释!如果你知道什么,那么请分享,如果重复但提供解释,请关闭该问题。 – Yupi

+0

哦,明显的解决方案是添加列'modifyAt',并将当前时间放在当用户“开始工作”的项目。按此列降序排序...这就是我们所谓的编程 – Selvin

+1

第一件事涉及到头脑是在数据库中创建一个具有位置的列,并在更改的项目上进行更新。 – kara4k

回答

1
  1. 介绍一个将用于订购的列,我们称之为position
  2. 当用户完成管理记录时,根据它们在数据集中的位置更新所有行。
  3. 当为下一个用户会话加载数据时,请使用ORDER BY根据position值对条目进行排序。
+0

感谢您的回答和解释。就像我的大脑被阻塞了,我无法弄清楚。 – Yupi

+0

不客气! – Egor