【发布时间】:2017-11-20 19:18:34
【问题描述】:
您好,我正在尝试新的 Android 架构组件,我已经构建了一个简单的应用程序,现在我想将 Texview 绑定到我的 ViewModel 中的一个变量,我之前这样做过,但我没有使用组件。现在 getter 没有被调用,TextView 的值也没有改变。
主活动:
public class MainActivity extends AppCompatActivity implements LifecycleOwner {
public MainViewModel viewModel;
主视图模型:
public class MainViewModel extends ViewModel {
private LatLng origin;
public LatLng getOrigin() {
return origin;
}
activity_main.xml:
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context="jacopo.com.carbook.MainActivity">
<data>
<variable name="viewModel" type="jacopo.com.carbook.MainViewModel" />
</data>
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{Double.toString(viewModel.origin.latitude)}"/>
</layout
在 gradle 文件中启用了 dataBinding,所以我不确定这里发生了什么,因为它与之前版本的应用程序的代码相同。
【问题讨论】:
标签: android xml mvvm data-binding