Android 颜色设置:透明度换算
簡介
#開頭色值
Android中的顏色值通常遵循RGB/ARGB標(biāo)準(zhǔn),使用時通常以“#”字符開頭,以16進(jìn)制表示。比如程序中用到的:android:textColor=”#F8FF00” , 常用的顏色值格式為:
#RGB #ARGB #RRGGBB #AARRGGBB其中,ARGB 依次代表透明度(alpha)、紅色(red)、綠色(green)、藍(lán)色(blue)。
以顏色值 #FF99CC00 為例,其中,FF 是透明度,99 是紅色值, CC 是綠色值, 00 是藍(lán)色值。
代碼中的色值
在android中經(jīng)常看到設(shè)置的顏色為八位的十六進(jìn)制的顏色值,例如:
public static final class color {public static final int lightblue=0x7f040000; }或者在 Java 中
textView.setTextColor(0xffff00f);說明:
0xffff00ff 是 int 類型的數(shù)據(jù),分組一下 0x|ff|ff00ff,0x 表示顏色整數(shù)的標(biāo)記,ff表示透明度,ff00ff表示色值,注意:0x后面ffff00ff必須是8位的顏色表示。
顏色和不透明度 (alpha) 值以十六進(jìn)制表示法表示。任何一種顏色的值范圍都是 0到 255(00到 ff)。
對于 alpha,00表示完全透明,ff表示完全不透明。
表達(dá)式順序是”aabbggrr”,其中”aa=alpha”(00到ff);”bb=blue”(00到ff);”gg=green”(00到ff);”rr=red”(00到ff)。
透明度
透明度分為256階(0-255),計算機(jī)上用16進(jìn)制表示為(00-ff)。透明就是0階,不透明就是255階,如果50%透明就是127階(256的一半當(dāng)然是128,但因為是從0開始,所以實際上是127)。
透明度 和 不透明度 是兩個概念, 它們加起來是1,或者100%.
ARGB 中的透明度alpha,表示的是不透明度。依據(jù)來自維基百科中的定義。
換算
在開發(fā)過程中,UI/UE給的標(biāo)注圖上,所有顏色值是RGB,但是透明度經(jīng)常都是百分比,例如:顏色值:#FFFFFF,透明度40%。
使用過程中我們需要進(jìn)行換算。以之前的值為例,換算過程如下:
將透明度轉(zhuǎn)換成不透明度(轉(zhuǎn)換方式參考“透明度”,第2條) 。 不透明度為60%
不透明度乘以255。 我們得到結(jié)果:153
將計算結(jié)果轉(zhuǎn)換成16進(jìn)制。得到最終的不透明度:99
將不透明度和顏色值拼接成ARGB格式。得到最終的顏色值: #99FFFFFF
常用不透明度對應(yīng)十六進(jìn)制值
100%— FF 95% — F2 90% — E6 85% — D9 80% — CC 75% — BF 70% — B3 65% — A6 60% — 99 55% — 8C 50% — 80 45% — 73 40% — 66 35% — 59 30% — 4D 25% — 40 20% — 33 15% — 26 10% — 1A 5% — 0D 0% — 00總結(jié)
以上是生活随笔為你收集整理的Android 颜色设置:透明度换算的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android Studio:64K问题
- 下一篇: android sina oauth2.