Background colour is coming from API in this form FFF9E6.I am using data binding.I am not able to understand how I can set it as background colour. I believe binding adapter would work but not sure how to write it. How can I write binding adapter for the same?
This code worked in my case.
@BindingAdapter("android:backgroundColor")
fun ViewGroup.setBackground(backgroundColor: String) {
val color: Int = try {
Color.parseColor(background)
} catch (e: Exception) {
Color.parseColor("#$background")
}
setBackgroundColor(color)
}
I ran into this same problem a few months back. what I did was stored the data coming from API to one POJO class. Then in an XML file using that POJO class member as data binding variable. i.e.
<TextView
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_margin="@dimen/_8dp"
android:layout_weight="1"
android:gravity="center"
android:padding="@dimen/_8dp"
app:color="@{item.color}" />
and it's binding adapter
@BindingAdapter("bind:color")
public static void setStatus(TextView textView, String color) {
}