我目前正试图使用数据绑定来设置我的开关按钮的检查状态,但由于某些原因,我的状态一直没有改变?
在我的设置页面,我做了以下操作。
档 - 设置碎片 - SettingsViewModel - SettingsLayout.XML
SettingsViewModel
private val _checked = MutableLiveData<Boolean>()
val checked : LiveData<Boolean> = _checked
SettingsLayout.XML
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|center"
android:layout_marginRight="@dimen/margin_big
android:checked="@{viewModel.checked}"/>
我已经仔细检查过了,以确保在我的 设置碎片 我愿意 DataBindingUtil. inflate 以及并通过我的SettingsViewModel。
你需要使用 双向数据绑定 像这样。
android:checked="@={viewModel.checked}"