我的十六进制值出现问题。我正在尝试找到一种方法,以便我的十六进制的alpha随时间变化。
现在我的代码看起来像:
color c = 0X00202020;
尝试将'0x00'更改为var,以便更容易操作。我试过......
int alph = 00;
color = 0xalph202020;
显然这不起作用。
还有其他方法可以在HEX中使用变量吗?
我真的不想将值转换为RGB。希望找到解决方案。
答案 0 :(得分:2)
你没有提到哪种语言。在大多数情况下,你可以“转移”#34;。 e.g。
int red = 0x20;
int green = 0x20;
int blue = 0x20;
int alpha = 0;
// Shift the alpha value "left" by 24 bits, red by 16 and green by 8.
// Assumes that each value is just 8bits long (0-255)
//
int color = (alpha << 24) + (red << 16) + (green <<8) + blue;
答案 1 :(得分:0)
仅更改颜色的Alpha值的最佳方法是使用&#39; color()&#39;具有十六进制值的methode,因此您无需将值转换为RGB:
color c = color(0x00202020, alph);