Android-无法调用ViewModel中定义的方法

Android-无法调用ViewModel中定义的方法,android,android-viewmodel,Android,Android Viewmodel,我试图调用在ViewModel类中创建的方法,但无法在初始化ViewModel的MainActivity中访问该方法 这是我的ViewModel类 public class MovieViewModel extends AndroidViewModel { private MovieRepository movieRepository; public List<Movie> movieList; public MovieViewModel(@NonNull Application

我试图调用在ViewModel类中创建的方法,但无法在初始化ViewModel的MainActivity中访问该方法

这是我的ViewModel类

public class MovieViewModel extends AndroidViewModel {

private MovieRepository movieRepository;
public List<Movie> movieList;

public MovieViewModel(@NonNull Application application) {
    super(application);
    movieRepository = new MovieRepository();
}

public List<Movie> getMovieList(String sortChoice, int pageNumber) {
    movieList = movieRepository.getMovieList(sortChoice,pageNumber);
    return movieList;
}
}
当我尝试调用getMovieList方法时

mViewModel.getMovieList(someVariable, someVariable); 

它以红色表示-无法解析符号“getMovieList”

您的
mViewModel
属于
ViewModel
类型,该类型没有名为
getMovieList
的方法。将类型更改为
moviewmodel


私有视图模型mViewModel;

ViewModel没有getMovieList,因此将其更改为


私人电影模型;

您正在分配
ViewModelProviders.of(this.get)(MovieViewModel.class)
添加到基本类型的变量
ViewModel
,因此您只能访问
ViewModel
中可用的方法


替换
私有视图模型mViewModel带有
私有电影视图模型mViewModel

如果要在
viewmodel
实例中保存viewmodel,请改用
moviewmodel
mViewModel.getMovieList(someVariable, someVariable);