使用 parseColor 设置背景颜色 textivew

Set background color textivew using parseColor

我正在尝试使用 parseColor 设置 TextView 背景颜色,但收到此错误:

需要一个颜色资源 ID,但收到了一个 RGB 颜色整数。

有人能帮帮我吗?

textView.setBackgroundColor(ContextCompat.getColor(itemView.context, Color.parseColor(product.brand.color)))

对象product.brand.color = #123123(这是示例颜色)

替换:

textView.setBackgroundColor(ContextCompat.getColor(itemView.context, Color.parseColor(product.brand.color)))

与:

textView.setBackgroundColor(Color.parseColor(product.brand.color))

ContextCompat.getColor() returns 与颜色资源关联的颜色(例如,R.color.primary)。 Color.parseColor() 没有 return 颜色资源 ID,这就是您收到错误的原因。相反,Color.parseColor() return 是一种实际颜色,这正是您 setBackgroundColor() 想要的颜色。

 textView.setBackgroundColor(getResources().getColor(R.color.yourcolor));

从您的资源中解析颜色。