問題タブ [android-mvvm]

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.

0 投票する
0 に答える
2272 参照

android - DataBinding-MVVM を使用した RecyclerView

私はそのようなものを実装するために Databinding-mvvm の概念を使用しています。メインアクティビティに recyclerview を宣言しました。お気に入り

私のカードビューは次のようになります

cardview の場合、viewmodel を cardviewmodal として作成し、Recyclerview の場合、viewmodel を作成し、データを埋めるためのアダプターも作成しました。cardviewmodel を含む viewmodel から recyclerview の値を設定する方法がわかりません。

0 投票する
1 に答える
2456 参照

android - Dagger 2 を使用した Android クリーン MVVM

Java&Android の世界に戻ってきました。コンパイル時間 DI と MvvM を活用する優れたプロジェクト スターターを探していたところ、次の 2 つを見つけました。

  1. テスト可能な Android MVVM の作成
  2. 国 - サンプルの Android アプリ

さて、私の問題です...ベースアクティビティを次のようにしたいと思います(重要な部分を保持します):

したがって、私の AppComponent は次のようになります。

AppComponent の場所:

最後に、具体的なアクティビティは次のとおりです。

今、次のエラーが発生し続けます。

私は何が欠けていますか?

ありがとう!

0 投票する
1 に答える
8021 参照

android - ViewModel と AndroidViewModel の違いは何ですか

この疑問をお持ちの方へ、

Androidのドキュメントによると、

ViewModel は特定のアクティビティとフラグメントのインスタンス化よりも長く存続するため、View や、アクティビティ コンテキストへの参照を保持する可能性のあるクラスを参照することはできません。ViewModel が Application コンテキストを必要とする場合 (たとえば、システム サービスを見つけるため)、AndroidViewModel クラスを拡張し、コンストラクターで Application を受け取るコンストラクターを持つことができます (Application クラスは Context を拡張するため)。

ドキュメントはこちらにあります: https://developer.android.com/topic/libraries/architecture/viewmodel.html

編集:説明の重複について:クラスをViewModelとAndroidViewModelに拡張できることを意味します。which を拡張する必要がある場合、上記の説明はそのためのものです。上記のリンクは、android.arch.lifecycle.ViewModel ではなく、一般的な MVVM アーキテクチャの ViewModel について説明しています。