ViewModel
だから、私は Androidクラスとアプリ アーキテクチャ ガイドについて読んでいて、次のようなものでビュー モデルが取得されることがわかりました。
viewModel = ViewModelProviders.of(this).get(UserProfileViewModel.class);
クラスを直接インスタンス化するのではなく、クラスを使用しViewModelProviders
ます。
ここまでは順調ですね。次に、このガイドではUserProfileViewModel
、 をリポジトリに「接続」する方法を示しますUserRepository
。
public class UserProfileViewModel extends ViewModel {
private UserRepository userRepo;
@Inject // UserRepository parameter is provided by Dagger 2
public UserProfileViewModel(UserRepository userRepo) {
this.userRepo = userRepo;
}
//more stuff
}
上記のコメントが示すように、 Dagger (コンストラクターのUserRepository
注釈) によって注入されます。@Inject
Dagger 2 を使用していない場合はどうなりますか? ビューモデルクラスに依存関係を注入するにはどうすればよいですか?