【发布时间】:2018-08-30 12:44:09
【问题描述】:
嘿,我正在尝试让我的 ViewModel 正常工作,但到目前为止还没有运气。
Android Studio 显示错误 Cannot resolve symbol 'ViewModelProviders'。
我在该主题上发现的所有其他问题都将extends Activity 更正为extends AppCompatActivity,但我正在扩展正确的问题。不知道我错过了什么......
我的代码基于This YouTube video
MainActivity.java
public class MainActivity extends AppCompatActivity implements
TileAdapter.TileAdapterOnClickHandler {
private BaseViewModel viewModel;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//set Toolbar
Toolbar myToolbar = findViewById(R.id.toolbar);
setSupportActionBar(myToolbar);
//initialize viewModel
viewModel = ViewModelProviders.of(this).get(BaseViewModel.class);
BaseViewModel.java
public class BaseViewModel extends ViewModel {
private Movie[] mMovie;
public void init (Movie[] movies){
this.mMovie = movies;
}
public Movie[] getMovie() {
return mMovie;
}
【问题讨论】:
-
“无法解析符号”表示您没有
import语句,或者您有但您的 Gradle 设置中没有依赖项。 -
检查 build.gradle 中是否有 android.arch.lifecycle:extensions 的依赖
-
要么他正在使用一些库并在 gradle 文件中添加了依赖项,因此他能够导入 ViewModel,要么他在不同的包下有自定义类
ViewModel,他正在从那里导入它 -
没有扩展作为依赖。谢谢@MuthukrishnanRajendran
标签: android viewmodel android-architecture-components