Привет, я новичок в MVVM в Android и работаю с liveata. Я пытаюсь создать экземпляр своей модели просмотра. Я считаю, что проблема в том, что я не передал свой репозиторий конструктору модели представления. Я продолжаю получать не могу создать экземпляр модели просмотра. Я не уверен, как это сделать, вот моя модель просмотра и ее создание.
public class UserProfileViewModel extends ViewModel {
private LiveData<User> user;
private UserRepository userRepository;
@Inject
public UserProfileViewModel(UserRepository userRepo){
this.userRepository = userRepo;
}
public void init(String userId){
if (this.user != null) {
return;
}
user = userRepository.getUser(userId);
}
public LiveData<User> getUser() {
return this.user;
}
}
//create view model in fragment
viewModel = ViewModelProviders.of(this).get(UserProfileViewModel.class);
viewModel.init(mUserId);
вот правильное объяснение использования модели представления ->
Обмен данными между фрагментами с использованием нового архитектурного компонента ViewModel
надеюсь это поможет
для всех, кто заблудился, решение этой проблемы можно найти там https://stackoverflow.com/a/49087002/6692278