如何将颜色从十六进制转换为RGB

Ana*_*kez 4 android colors

我在String.xml文件中有颜色,这样 <color name="ItemColor1">#ffff992b</color> 我怎么能转换为四个变量

float Red;
float Green;
float Blue;
float Alfa;
Run Code Online (Sandbox Code Playgroud)

在Java代码?任何人都可以帮忙

小智 14

您还可以使用Color类的[红色,绿色,蓝色]功能:

    int color = getResources().getColor(R.color.youcolor);
    int r = Color.red(color);
    int g = Color.green(color);
    int b = Color.blue(color);
Run Code Online (Sandbox Code Playgroud)


aho*_*off 10

int color=getResources().getColor(R.color.ItemColor1);
float red=   (color >> 16) & 0xFF;
float green= (color >> 8) & 0xFF;
float blue=  (color >> 0) & 0xFF;
float alpha= (color >> 24) & 0xFF;
Run Code Online (Sandbox Code Playgroud)

我假设你正在使用ARGB(前2个字符是alpha),使用RGBA的移位值会有所不同.文档说,这是ARGB.