在xml进行颜色变化,使用三目运算符。

/ 默认分类 / 没有评论 / 590浏览

Tint属性:染色改变图片的颜色,透明部分不改变

比如要给Imagebutton,在某个条件时变成灰色,其他变成OK色,直接在XML就搞定了:

<ImageButton
    android:id="@+id/connect_ok_btn"
    android:layout_width="44dp"
    android:layout_height="40dp"
    android:layout_marginStart="10dp"
    android:onClick="@{connectViewModule::onBtnClick}"
    android:background="?selectableItemBackground"
    android:enabled="@{connectViewModule.dataInput.length() >= 8}"
    android:tint="@{connectViewModule.dataInput.length() >= 8 ? @color/colorBtn : @color/primaryText}"
    android:scaleType="centerInside"
    android:src="@drawable/icon_findble" />