其他分享
首页 > 其他分享> > android-查看可见性取决于数据绑定中的CheckBox

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