如何将int转换为十六进制颜色并将其与ColorDrawable一起使用?
我尝试了其他使用字符串的方法,但得到“ ColorDrawable无法应用于java.lang.String”。
我试过了:
String strColor = String.format("#%06X", 0xFFFFFF & actionColor);
actionBar.setBackgroundDrawable(new ColorDrawable(strColor));
但是我不能将其应用于ColorDrawable。我正在尝试使用十六进制设置ActionBar的颜色。
谢谢
最佳答案
ColorDrawable
将int作为参数而不是string
。我想actionColor
也是一个整数(彩色十六进制),所以您应该这样做。
int color = 0xFFFFFF & actionColor;
actionBar.setBackgroundDrawable(new ColorDrawable(color));