从Realm检索列表后,填充RecyclerView的最佳模式是什么?

时间:2017-05-26 14:11:18

标签: android realm

我正在使用MVVC模式,在我的Controller上,我检索除Main之外的线程中的对象列表。之后,我注意到我的观点是在主线程中使用新检索的对象更新RecyclerView。

我经常收到一个异常,说明Realm托管对象不能在创建它们的线程之外进行操作 - 因为它们是在Controller上的一个线程中创建的,并且是在主线程上添加的。每当添加/删除对象或刷新整个列表时,这都会导致尝试更新列表时出错。

在这些情况下使用Realm的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

  

每当添加/删除对象或刷新整个列表时,这都会导致尝试更新列表时出错。

使用 RealmRecyclerViewAdapter (在UI线程上),它自动管理OrderedRealmCollectionChangeListener,当数据集发生更改时(通过任何线程上的任何写入)通知适配器。

请参阅文档:https://realm.io/docs/java/latest/#adapters