我想创建一个方法,将颜色作为输入,使其透明度为50%并返回它。(例如#FFFFFF作为输入,#50FFFFFF作为输出)。怎么做?
答案 0 :(得分:4)
android中的颜色只是一个具有ARGB值的整数。
public int setAlpha(int color, int alpha) {
return (alpha << 24) | (color & 0x00ffffff);
}
如果您希望以百分比形式指定alpha,而不是以0到255的等级指定,则可以
public int setAlpha(int color, int alphaPercentage) {
int alpha = alphaPercentage * 255 / 100;
return (alpha << 24) | (color & 0x00ffffff);
}
答案 1 :(得分:0)
可能我的解决方案有点无聊..但我可以提出一些建议..
颜色代码是十六进制,因此将其转换为小数。
将小数除以2&amp;再次将结果转换回十六进制。
示例: - FFFFFF = 16777215/2 = 8388607 = 7FFFFF ..