我想以编程方式设置FrameLayout的前景色(而不是在XML属性中)。 我有RGB
颜色代码。
我如何将颜色转换为可绘制对象:
frm.setForeground(Drawable);
我想以编程方式设置FrameLayout的前景色(而不是在XML属性中)。 我有RGB
颜色代码。
我如何将颜色转换为可绘制对象:
frm.setForeground(Drawable);
您可以从颜色创建Drawable
:
final int color = 0xFFFF0000;
final Drawable drawable = new ColorDrawable(color);
ContextCompat
从颜色创建Drawable
int color = R.color.black_trans_60;
frm.setForeground(new ColorDrawable(ContextCompat.getColor(mContext, color)));
请使用ContextCompat
代替直接颜色,因为新的API ColorDrawable
需要ColorDrawable(@ColorInt int color)
new ColorDrawable(context.getResources().getColor(color))
。 - Zon