android - EditText LiveData 双向绑定(bind)

标签 android data-binding android-databinding android-architecture-components android-livedata

好吧,我有一个 ViewModel带 setter/getter getTitle()返回 MutableLiveData<String> .

<EditText
    style="@style/Widget.EditText.FullWidth"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="@string/label_title"
    android:inputType="text"
    android:text="@={ viewModel.title }" />

一开始效果很好:EditText包含 MutableLiveData 的值当它第一次出现时。但是,如果使用 MutableLiveData.setValue() 更新此数据的值(例如通过另一个 EditText ,或来 self 的代码),那么文本框内的值不会改变。我该如何解决这个问题?

最佳答案

这在 new version of Android Studio 中正常工作,它支持正确绑定(bind)到 LiveData 对象。

关于android - EditText LiveData 双向绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49723950/

相关文章:

Android API 级别要求

android - 我可以将 A/B 测试的标题/名称或描述以及变体名称从 Firebase 获取到 Activity 中吗?

data-binding - UI5中更新模型,使用formatter时双向数据绑定(bind)变成单向

javascript - Ajax 绑定(bind)选择(组合框)错误(或列表为空,具体取决于浏览器)

java - Android:通过 android 数据绑定(bind)将 lambda 传递给回收器适配器

android - 每个 Activity 的静态初始化器(就像 Fragment 一样)

android - 如何获得 1 :1 pixels on android emulator?

C#.net 从 .bat 文件的结果填充数据网格

Androidx 和数据绑定(bind)

Android数据绑定(bind),无法生成 View 绑定(bind)