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

标签 android realm

我正在使用 MVVC 模式,在我的 Controller 上,我在 Main 以外的线程中检索对象列表。之后,我注意到我的 View 这次在主线程中用新检索的对象更新了 RecyclerView。

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

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

最佳答案

This leads to errors trying to update the list whenever a object is added/removed or if the entire list is refreshed.

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

查看文档:https://realm.io/docs/java/latest/#adapters

关于android - 从 Realm 检索列表后填充 RecyclerView 的最佳模式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44203755/

相关文章:

java - ActionBarActivity 无法解析

java - 集合排序在android中的使用

Android 模拟器不会出现在 Ubuntu 上

android - 如何跨线程传递 RealmResults

swift - RealmSwift RealmCollectionChange tableView 崩溃

android - 如何在更改方向时保存 searchView 的状态

ios - 快速从 Realm 中提取值

android - 多表 Realm 查询

ios - Realm :结果<T> 和列表<T>

android - 如何将线性布局与垂直中心对齐?