Android 安卓:在不更改数据库的情况下修改光标或适配器?
我有一个工作良好的自定义游标适配器和自定义的ListView。此视图允许用户通过重新排列ListView的行来使用UI。没问题(好吧,现在经过大量的研究和反复试验!) 但我不喜欢每次用户移动其中一行时都要点击数据库。他们可能会做很多修改。此外,我希望用户能够改变他们的想法,取消他们的所有更改 所以我想知道:有没有一种方法可以在不改变数据库的情况下修改这个ListView的内容(即行的顺序)?这样,当用户一下子单击OK时,我就可以更新数据库,如果用户取消,我就可以忽略这些更改Android 安卓:在不更改数据库的情况下修改光标或适配器?,android,database,listview,row,android-cursoradapter,Android,Database,Listview,Row,Android Cursoradapter,我有一个工作良好的自定义游标适配器和自定义的ListView。此视图允许用户通过重新排列ListView的行来使用UI。没问题(好吧,现在经过大量的研究和反复试验!) 但我不喜欢每次用户移动其中一行时都要点击数据库。他们可能会做很多修改。此外,我希望用户能够改变他们的想法,取消他们的所有更改 所以我想知道:有没有一种方法可以在不改变数据库的情况下修改这个ListView的内容(即行的顺序)?这样,当用户一下子单击OK时,我就可以更新数据库,如果用户取消,我就可以忽略这些更改 同样,使用这种理论技
同样,使用这种理论技术,用户只需等待一次AsyncTask弹出并执行其数据库操作,而不是每次修改其列表。使用一个自定义类,该类包含数据库中所需的所有成员。创建customClass对象的ArrayList,并用从数据库检索到的来自游标的数据填充它。将此arraylist传递给CustomBaseAdapter并填充listview。根据用户反应修改arraylist数据。根据“确定”或“取消”,单击“更新数据库中的相应数据”。是的,我担心我必须这样做。一开始就忽略了使用适配器的所有细节,不是吗?还有其他建议吗?我不认为有更好的解决办法。要跟踪对数据库值所做的更改,需要一个自定义对象。此外,您希望更改仅在用户单击“确定”或“取消”以最小化数据库操作时反映。所以这应该是唯一的选择。如果你有更好的解决方案,请分享。