【问题标题】:Updating Recycler View With Real Time Data使用实时数据更新回收站视图
【发布时间】:2018-03-28 22:42:25
【问题描述】:

我有一个我正在实时更新的对象列表(每秒一次)。我已将我的应用设计为使用 MVVM 架构和 Android DataBinding 库

我已将视图模型绑定到视图,并且每次我重新加载活动时一切都会正常更新,但是否有通知视图模型模型数据已更新并相应地实时更新视图?

我已经尝试实现 BaseObservable 接口和 ObservableFields,但我仍然得到相同的结果。

虽然我不熟悉 RxJava,但我可能会使用一些 RxJava 技术,因此任何指向解决类似问题的示例的指针都会有所帮助

谢谢

【问题讨论】:

  • paging库,关注LivePagedListProviderPagedListAdapterDataSource(TiledDataSource/KeyedDataSource)
  • @pskink 感谢您的建议,问题是分页库是新架构组件库的一部分,我不想在我的应用程序中使用它,因为它仍处于 alpha 阶段
  • 实现自己的艰巨任务,请查看:mag.n26.com/…

标签: android mvvm rx-java rx-android android-databinding


【解决方案1】:

要根据 ViewModel 更改更新视图,您只需调用 notifyChange(如果您已实现 BaseObservable)或 notifyPropertyChange。要让 ViewModel 知道模型已经更新,您可以使用 RxJava 或实现您自己的 onModelChanged 接口。

如果您使用的是 ContentProvider(例如 CursorLoader),contentProviders 也可以调用 getContext().getContentResolver().notifyChange(uri, null) 通知模型已更改(这将导致在 ViewModel 中再次调用 onLoadFinished()。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-21
    相关资源
    最近更新 更多