Android color(颜色) 在XML文件和java代码中
2015-10-21 16:20
561 查看
Android color(颜色) 在XML文件和java代码中,有需要的朋友可以参考下。
1、使用Color类的常量,如:
int color = Color.BLUE;//创建一个蓝色 是使用Android提供的颜色
int color = Color.RED; int color = Color.WHITE;
2、通过ARGB构建,如:
int color = Color.argb(127, 255, 0, 255);
//半透明的紫色其中第一个参数表示透明,0表示完全透明,255(ff)表示完全不透明;后三位分别代表RGB的值了。
3、使用XML资源文件来定义颜色
该方法扩展性好,便于修改和共享,如在values目录下创建一个color.xml:
<?xml version=”1.0” encoding=”utf-8”>
<resources>
<color name=”mycolor”>#7fff00ff</color>
</resources>
定义了一个名为mycolor的颜色,在别的地方就可以通过引用mycolor来获取该颜色值,如
textView定义中:Android:textColor="@drawable/mycolor"
Java代码中可以使用ResourceManager类中的getColor来获取该颜色:
int color = getResources().getColor(R.color.mycolor);
这与第二种方法得到的值是一样的,getResources()方法返回当前活动Activity的ResourceManager类实例。
说明:XML定义方法接受6位和8位两种表示法,而且开头必须是#,8位定义时前两位表示透明。(对于简单,也可以缩写形式),例如:
<color name="solid_red">#f00</color>
<color name="solid_blue">#0000ff</color>
<color name="solid_green">#f0f0</color>
<color name="solid_yellow">#ffffff00</color>
4、直接定义色值,如:
int color = 0xff00ff00;
这种方法必须使用0x开头,而不是用我们常用的#。与方法3不一样,值也必须用8位表示,不接受6位的颜色表示。分组一下0x|ff|ff00ff,0x是代表颜色整数的标记,ff是表示透明度,ff00ff表示RGB颜色值。
1、使用Color类的常量,如:
int color = Color.BLUE;//创建一个蓝色 是使用Android提供的颜色
int color = Color.RED; int color = Color.WHITE;
2、通过ARGB构建,如:
int color = Color.argb(127, 255, 0, 255);
//半透明的紫色其中第一个参数表示透明,0表示完全透明,255(ff)表示完全不透明;后三位分别代表RGB的值了。
3、使用XML资源文件来定义颜色
该方法扩展性好,便于修改和共享,如在values目录下创建一个color.xml:
<?xml version=”1.0” encoding=”utf-8”>
<resources>
<color name=”mycolor”>#7fff00ff</color>
</resources>
定义了一个名为mycolor的颜色,在别的地方就可以通过引用mycolor来获取该颜色值,如
textView定义中:Android:textColor="@drawable/mycolor"
Java代码中可以使用ResourceManager类中的getColor来获取该颜色:
int color = getResources().getColor(R.color.mycolor);
这与第二种方法得到的值是一样的,getResources()方法返回当前活动Activity的ResourceManager类实例。
说明:XML定义方法接受6位和8位两种表示法,而且开头必须是#,8位定义时前两位表示透明。(对于简单,也可以缩写形式),例如:
<color name="solid_red">#f00</color>
<color name="solid_blue">#0000ff</color>
<color name="solid_green">#f0f0</color>
<color name="solid_yellow">#ffffff00</color>
4、直接定义色值,如:
int color = 0xff00ff00;
这种方法必须使用0x开头,而不是用我们常用的#。与方法3不一样,值也必须用8位表示,不接受6位的颜色表示。分组一下0x|ff|ff00ff,0x是代表颜色整数的标记,ff是表示透明度,ff00ff表示RGB颜色值。
相关文章推荐
- android十六进制颜色代码转换为int类型数值
- 从2.3.3到4.1.1:最全的android系统源码下载大集合
- Android 5.0 动画(二)-SVG
- Android:自定义控件 --- 自定义属性 枚举值(固定属性值)
- Android中ProgressBar样式
- Android onMesure 用法简介
- 学习Android推送功能笔记(3)---极光推送
- android基类Dialog
- 新Android病毒出现 自动下载且无法卸载
- android 之popupWindow 在指定位置上的显示
- android事件分发机制
- Android多窗口分屏(原生方法)
- Android 弹出对话框Dialog充满屏幕宽度
- Android 属性动画详解
- RecyclerView妙不可言
- android自定义控件之彩虹加载圆圈
- 学习Android推送功能笔记(2)---极光推送
- Android 高清加载巨图方案 拒绝压缩图片
- 安卓开发学习之012 TextView高级应用
- Android框架基础JNI