android颜色值的表示方法

android:background="#FFFFFFFF"的意思

Android中的颜色值是通过红(Red)、绿(Green)、蓝(Blue)三原色,以及一个透明度(Alpha)值来表示,颜色值总是以井(#)开头,接着是Alpha-Red-Green-Blue的形式。其中Alpha值可以省略,如果省略Alpha值,那么该颜色默认是不透明的。

Android颜色值一般有四种形式:

  • #RGB:分别表示红、绿、蓝三原色的值(该表示方法只支持0~F16级的颜色)来表示颜色。
  • #ARGB:分别表示透明度(只支持0~F16级的透明度)、红、绿、蓝的三原色的值该表示方法只支持0~F16级的颜色)
  • #RRGGBB:分别表示红、绿、蓝三原色的值(该表示方法只支持00~FF256级的颜色)来表示颜色。
  • #AARRGGBB:分别表示透明度(只支持00~FF256级的透明度)、红、绿、蓝三原色的值(该表示方法只支持00~FF256级的颜色)来表示颜色。

上面四种形式,ARGB都表示一个十六进制的数,其中A代表透明度,R代表红色的数值,G代表绿色的数值,B代表蓝色的数值。

下面是相关的参考资料:

6位(#000000)就是RGB值

8位(#1e000000)头两位是透明度,后6位是RGB值,00是完全透明,ff是完全不透明,比较适中的透明度值是 1e

1、使用Color类的常量,如:

            
  1. intcolor=Color.BLUE;//创建一个蓝色是使用Android提供的颜色
  2. intcolor=Color.RED;
  3. intcolor=Color.WHITE;

2、通过ARGB构建,如:

            
  1. intcolor=Color.argb(127,255,0,255);//半透明的紫色

其中第一个参数表示透明,0表示完全透明,255(ff)表示完全不透明;后三位分别代表RGB的值了。

3、使用XML资源文件来定义颜色

该方法扩展性好,便于修改和共享,如在values目录下创建一个color.xml:

            
  1. <?xmlversion=”1.0”encoding=”utf-8”>
  2. <resources>
  3. <colorname=”mycolor”>#7fff00ff</color>
  4. </resources>

定义了一个名为mycolor的颜色,在别的地方就可以通过引用mycolor来获取该颜色值,如textView定义中:

            
  1. android:textColor="@drawable/mycolor"

Java代码中可以使用ResourceManager类中的getColor来获取该颜色:

            
  1. intcolor=getResources().getColor(R.color.mycolor);

这与第二种方法得到的值是一样的,getResources()方法返回当前活动Activity的ResourceManager类实例。

说明:XML定义方法接受6位和8位两种表示法,而且开头必须是#,8位定义时前两位表示透明。

4、直接定义色值,如:

            
  1. android:textColor="@drawable/mycolor"

这种方法必须使用0x开头,而不是用我们常用的#。与方法3不一样,值也必须用8位表示 ,不接受6位的颜色表示。分组一下0x|ff|ff00ff,0x是代表颜色整数的标记,ff是表示透明度,ff00ff表示RGB颜色值。

=======================

补充一点Android布局中背景图片的设置(编辑LinearLayout):

* 可以使用纯色:android:background="@drawable/mycolor" (XML资源文件中定义的颜色)

* 也可使用图片:android:background="@drawable/bg" (需要将一个名为bg.jpg或png的图片拷贝到res/drawable-hdpi目录下)


更多相关文章

  1. android gravity and LinerarLayout for state
  2. android设置Activity背景色为透明的2种方法
  3. android设置Activity背景色为透明的2种方法
  4. 【Android(安卓)UI】Android颜色系大全
  5. Android(安卓)4.4以后设置状态栏颜色
  6. Android(安卓)listview分割线的颜色设置
  7. ProgressBar详解
  8. Android(安卓)系统字体和颜色样式
  9. android 设置Button或者ImageButton的背景透明

随机推荐

  1. Android数字签名的学习
  2. ApiDemos导入eclipse
  3. Qt on Android(安卓)之设置应用名为中文
  4. Handler消息传送机制
  5. 【Android(安卓)Developers Training】 1
  6. Recovery简介
  7. Material Design
  8. 源码下载:74个Android开发开源项目汇总
  9. 安卓之初
  10. android开发小技巧2(Dx 1 e…