在app模块的build.gradle中加入以下代码。
buildFeatures {
dataBinding true
}
使用@BindingAdapter注解,也可以定义自定义属性,第一个参数必须为View或View的子类,表示这个属性在xml中可以指定在哪个控件上。
import android.view.View;
import androidx.databinding.BindingAdapter;
public class DataBindingComponent {
@BindingAdapter("visibleGone")
public static void visibleGone(View view, boolean gone) {
view.setVisibility(gone?View.GONE:View.VISIBLE);
}
}
比如在xml中这样使用,就可以做到和android:visibility="GONE"一样的效果了。
app:visibleGone="true"