如果我猜对了,您得到的是形式为的无符号整数
0xAARRGGBB,因此
int b = (argb)&0xFF;int g = (argb>>8)&0xFF;int r = (argb>>16)&0xFF;int a = (argb>>24)&0xFF;
Color c = new Color(argb);
要么
Color c = new Color(argb, true);
如果您也想在颜色中使用alpha分量。
更新
红色和蓝色成分在原始答案中是相反的,因此正确的答案将是:
int r = (argb>>16)&0xFF;int g = (argb>>8)&0xFF;int b = (argb>>0)&0xFF;
在第一段代码中也进行了更新
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)