我有一个非常简单的XML代码:
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:text="@={viewModel.password}"
android:enabled="@{viewModel.inputEnabled}">
现在,当viewModel.inputEnabled
在下面是MutableLiveData<Boolean>
时,它根本不起作用,无论inputEnabled
的值如何,总是启用编辑。但是,只需要将inputEnabled
更改为ObservableField<Boolean>
(并将setValue
切换为set
),即可立即开始工作。
为什么会这样?如何使MutableLiveData
正常工作?
请注意,此字段在三个地方使用(以在处理过程中启用/禁用表格)。
答案 0 :(得分:3)
我遇到了同样的问题。...请务必在您的活动/片段中致电以下内容:
binding.setLifecycleOwner(this)