android-查看可见性取决于数据绑定中的CheckBox
作者:互联网
我想根据CheckBox选中状态设置视图可见性.就像我们在preference.xml中所做的一样.
目前我在做
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
>
<data>
<import type="android.view.View"/>
<variable
name="isScheduleChecked"
type="java.lang.Boolean"/>
<variable
name="activity"
type="com.amelio.ui.activities.ActivityCart"/>
</data>
<LinearLayout
style="@style/llDefault"
android:layout_height="match_parent"
android:orientation="vertical"
>
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onCheckedChanged="@{()-> isScheduleChecked}"
android:text="Checkbox"/>
<LinearLayout
style="@style/llDefault"
android:padding="@dimen/space_small"
android:visibility="@{isScheduleChecked ? View.VISIBLE : View.GONE, default = gone}"
>
</LinearLayout>
</LinearLayout>
</layout>
这是行不通的.我认为android:onCheckedChanged =“ @ {()-> isScheduleChecked}”这行不起作用.我做错了什么?有人告诉我实现它的最佳方法.
目前,我正在通过我的活动(如binding.setIsScheduleChecked(true / false);)来更改isScheduleChecked.但是我不只是为了设置可见性而在Java类中编写代码.
解决方法:
好主意!我通过将您的onCheckedChanged行替换为:
android:checked="@={isScheduleChecked}"
标签:android-layout,android-databinding,android,checkbox 来源: https://codeday.me/bug/20191109/2011363.html