textView.setTextColor 只能是textView.setTextColor(Color.Red);
textView.setTextColor(0xfff1f6fa);这样 我要用 "#f1f6fa" ,"orange" 这样的颜色怎么做
这是一个字符串 外部程序传进来的 不知道会是什么值
textView.setTextColor(0xfff1f6fa);这样 我要用 "#f1f6fa" ,"orange" 这样的颜色怎么做
这是一个字符串 外部程序传进来的 不知道会是什么值
"#f1f6fa" 这个怎么转到 int ?
2楼这么说的,但是我没用过或者 int a=Integer.parseInt("ff",16);后面的参数是进制,但是要去掉那个井号
利用计算器将十六进制转化成十进制
f1 f6 fa
241 246 250
if (colorString.charAt(0) == '#') {
// Use a long to avoid rollovers on #ffXXXXXX
long color = Long.parseLong(colorString.substring(1), 16);
if (colorString.length() == 7) {
// Set the alpha value
color |= 0x00000000ff000000;
} else if (colorString.length() != 9) {
throw new IllegalArgumentException("Unknown color");
}
return (int)color;
} else {
Integer color = sColorNameMap.get(colorString.toLowerCase(Locale.US));
if (color != null) {
return color;
}
}
throw new IllegalArgumentException("Unknown color");
}