nom*_*ngo 2 android background-color argb
对于给定的TextView,如何获取Alpha,Red,Green和Blue值(0-255)?
我知道如何设置TextView.SetBackgroundColor(Color.argb(a_int,r_int,g_int,b_int));
但是如何获得?
非常感谢
ColorDrawable cd = (ColorDrawable) textView.getBackground();
int color = cd.getColor();
int alpha = cd.getAlpha();
int red = Color.red(color);
int green = Color.green(color);
int blue = Color.blue(color);
Run Code Online (Sandbox Code Playgroud)
Color类定义了创建和转换颜色int的方法.
颜色表示为打包的int,由4个字节组成:alpha,red,green,blue.
这些值未经过多次修改,这意味着任何透明度都只存储在alpha组件中,而不是存储在颜色组件中.
组件存储如下(alpha << 24)| (红色<< 16)| (绿色<< 8)| 蓝色.
每个组件的范围在0..255之间,0表示对该组件没有贡献,255表示100%贡献.
因此,opaque-black将是0xFF000000(100%不透明但没有红色,绿色或蓝色的贡献),而opaque-black将是0xFFFFFFFF
| 归档时间: |
|
| 查看次数: |
4483 次 |
| 最近记录: |