【发布时间】:2019-02-23 00:51:45
【问题描述】:
我试图弄清楚如何在 Android 中使用数据绑定,但遇到了一个奇怪的问题。当我将 ViewModel 类放入某个包中时,生成的 ActivityMainBinding 看不到它并说:error: package ViewModels does not exist。但是如果我把它放在根包中,那么麻烦就消失了。是我的错误还是某种错误?
代码:
activity_main.xml
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools">
<data>
<variable
name="DataContext"
type="com.example.sombrero.bluem.ViewModels.MainViewModel" />
</data>
...
MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);
MainViewModel mainViewModel = ViewModelProviders.of(this).get(MainViewModel.class);
binding.setDataContext(mainViewModel);
}
MainViewModel 现在只是一个空类。
【问题讨论】:
标签: java android data-binding android-databinding