問題タブ [android-viewmodel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android の RecyclerViewAdapter や ListAdapter などのアダプタと ViewModel (アーキテクチャ コンポーネント) の違いは何ですか?
私はまだ Android プログラミングを学んでおり、ViewModel の概念を理解しようとしています。ビュー モデル (ほぼすべてのビューモデル チュートリアル) の背後にある主な動機は、データをライフサイクル イベントにとらわれないようにすることです。新しく作成されたアクティビティで作成されたビューで同じアダプターが使用されるため、ListView または Recyclers で使用されるアダプターもこの機能を提供することがわかりました。両方の正確な違いは何ですか?
私の現在の理解によると、ViewModel は Activity 内のすべてのビューに対してライフサイクルに依存しないデータを持つ機能を提供しますが、Adapter (同じものを提供できますが) は特定のビューでのみ機能します。私の理解は正しいですか?
android - 親フラグメントと子フラグメントの両方に ViewModel の同じインスタンスを与える方法
フラグメントには、ParentFragment と ChildFragment の 2 つがあります。
ChildFragment
のビューに が追加されましたParentFragment
。
現在Dagger2
Android で使用してParentFragmentModule
いるメソッドには次のものがあります。
MyViewModelFactory、MyViewModel、MyViewModelImpl は、アプリで作成された単純な ViewModel ロジックです。
ChildFragmentModule には次のメソッドがあります。
ViewModel
これは、 2 つの異なるフラグメント インスタンスを受け取るため、明らかに の 2 つの別個のインスタンスを作成しています。
親フラグメントと子フラグメントの両方でデータを共有できるように、同じインスタンスを返すにはどうすればよいでしょうか?
ParentFragment
の代わりにを渡そうとChildFragment
しましたChildFragmentModule
が、それは Dagger 依存性注入エラーにつながります。