通过ItemTouchHelper实现了对RecyclerView的拖拽,因此用户可以通过向上或向下拖动来更改项目的顺序。
按照规范 - 当android支持库调用ItemTouchHelper.Callback#clearView
时运动结束,所以我们需要在这里更新DB(sqlite)并更改拖动项目和其他(受影响)的顺序 - 意味着~a对DB的请求很少。
但是当我看到从GUI线程调用clearView
时,我们无法从那里进行调用(根据数据库索引和受影响项目的数量,一些请求可能非常繁重)。
那么这里的最佳做法是什么?
或者只是通过clearView
从<{1}}触发数据库更新?
答案 0 :(得分:0)
最后我通过android.os.AsyncTask
做了:在那里移动了所有数据库交互。