2017-10-17 27 views
0

私はリアルタイムで(毎秒1回)更新しているオブジェクトのリストを持っています。 MVVMアーキテクチャとAndroid DataBindingライブラリを使用するように私のアプリケーションを設計しましたリアルタイムデータを使用したリサイクルビューの更新

私はビューモデルをビューにバインドしました。アクティビティをリロードするたびにすべてが正常に更新されますが、ビューモデルにそのモデルデータが更新され、リアルタイムでビューが更新されますか?

私はBaseObservableインターフェイスとObservableFieldsを実装しようとしましたが、同じ結果が得られます。

私はRxJavaに不慣れだが、私はそう同様の問題を解決する例へのポインタがViewModelに変化に基づいて更新するためのビューを取得するには

おかげ

+0

[Paging](https://developer.android.com/topic/libraries/architecture/paging.html)ライブラリを参照し、 'LivePagedListProvider'、' PagedListAdapter'、 'DataSource'(' TiledDataSource'/'KeyedDataSource')に注意してください。 – pskink

+0

@ pskink提案のおかげで、問題はページングライブラリが新しいアーキテクチャコンポーネントライブラリの一部であり、まだ私のアプリでそれを使用したくないということです。まだアルファ段階にあります。 – d199224

+0

yoを実装するための厳しい仕事urself、これを確認してください:https://mag.n26.com/reactive-clean-architecture-with-android-architecture-components-685a6682e0ca –

答えて

0

役立つだろう使用することができますおそらくいくつかのRxJava技術は、 notifyChange(BaseObservableを実装している場合)またはnotifyPropertyChangeに電話するだけです。モデルが更新されたことをViewModelに知らせるには、RxJavaを使用するか、独自のonModelChangedインターフェイスを実装します。

あなたが(例えば、およびCursorLoader)のContentProviderを使用している場合は、contentProvidersは、モデルはViewModelにに再び呼び出されている)(onLoadFinishedにつながるはずである(変更されたことを通知する getContext().getContentResolver().notifyChange(uri, null) を呼び出すことができます。

関連する問題