该类定义的都是些static常量和函数,这些函数都是为了创建和转化成int型的color。颜色是由int型的数表示,由4个字节组成,分别是A R  G  B,这个int型的值是确定的,透明度的值只能存在A这个字节上,不能存在颜色的字节上。存储的方式为(alpha << 24) | (red << 16) | (green << 8) | blue.每一部分的取值范围都是0-255,0表示没有,255表示填满了。不透明的黑色的值是0xff000000,不透明的白色的值是0xffffffff.

public static int HSVToColor(float[] hsv)

把HSV的内容转化成color,其中alpha设置成0xff,hsv有三个成员,hsv[0]的范围是[0,360),表示色彩,hsv[1]范围[0,1]表示饱和度,hsv[2]范围[0,1]表示值,如果它们的值超出范围,那么它们会被截断成范围内的值。

public static int HSVToColor(int alpha, float[] hsv)

同上,不过alpha的值不再是0xff,而是由参数来设定

public static void RGBToHSV(int red, int green, int blue, float[] hsv)

将RGB的值转化成hsv值

public static int alpha(int color)

获取color的alpha值,相当于color>>24;

public static int blue(int color)

获取color的blue值,相当于color&0xff;

public static int argb(int alpha, int red, int green, int blue)

从ARGB的值中获得一个int型color,注意每个参数的范围是0-255,由于没有范围检查,如果超出范围的话,返回的颜色值是不可预知的。

public static void colorToHSV(int color, float[] hsv)

将颜色的值转换成hsv值,相当于RGBToHSV(((color>>16)&0xff),((color>>8)&0xff),(color&0xff),hsv);

public static int green(int color)

获取color的green值,相当于(color>>8)&0xff

public static int parseColor(String colorString)

从字符串中解析出int型color,如果解析不出来,就会抛出异常,支持这样的格式#RRGGBB #AARRGGBB 'red', 'blue', 'green', 'black', 'white', 'gray', 'cyan', 'magenta', 'yellow', 'lightgray', 'darkgray'

public static int red(int color)

获取color的red值,相当于(color>>16)&0xff

public static int rgb(int red, int green, int blue)

从RGB的值中获取一个int型color,其中alpha设置为0xff,同样该函数没有范围检查,如果参数超出范围的话,返回的颜色也许是不可预知的

android.graphics.Color的更多相关文章

  1. android.graphics.Matrix

    Matrix类包含了一个3x3的矩阵用来改变坐标,它没有一个构造器来初始化它里边的内容,所以创建实例后需要调用reset()方法生成一个标准matrix,或者调用set..一类的函数,比如setTra ...

  2. android Graphics(三):区域(Range)

    前言:最近几天对画图的研究有些缓慢,项目开始写代码了,只能在晚上空闲的时候捯饬一下自己的东西,今天给大家讲讲区域的相关知识,已经想好后面两篇的内容了,这几天有时间赶紧写出来给大家.有关界面开发的东东内 ...

  3. int android.graphics.Bitmap.getRowBytes()

    int android.graphics.Bitmap.getRowBytes() Return the number of bytes between rows in the bitmap's pi ...

  4. 【转】android Graphics(四):canvas变换与操作

    android Graphics(四):canvas变换与操作 分类: 5.andriod开发2014-09-05 15:05 5877人阅读 评论(18) 收藏 举报   目录(?)[+]   前言 ...

  5. android Graphics(四):canvas变换与操作

    前言:前几篇讲解了有关canvas绘图的一些操作,今天更深入一些,讲讲对画布的操作,这篇文章不像前几篇那么容易理解,如果以前没有接触过画布的童鞋可能比较难以理解,为什么会这样.我尽量多画图,让大家更清 ...

  6. android Graphics(二):路径及文字

    前言:今天项目进入攻关期,他们改Bug要改疯掉了,主管为了激励大家,给大家发了一封邮件,讲到他对项目和学习的理解,一个很好的图形模型,分享给大家,如图在下面给出:(不便给出原文,我仅做转述)无论是学习 ...

  7. android Graphics(一):概述及基本几何图形绘制

    前言:我最近想抽空研究研究android的各种特效,android的特效真是其它平台无法比拟的,而且一个漂亮的UI交互,会给APP增色不少,而学习特效之前,有关graphics绘图的基础知识是必不可少 ...

  8. 使用android.graphics.Path类自绘制PopupWindow背景

    PopupWindow简单介绍 PopupWindow是悬浮在当前activity上的一个容器,用它能够展示随意的内容. PopupWindow跟位置有关的API有以下几个: showAsDropDo ...

  9. Android开发之parseSdkContent failed Could not initialize class android.graphics.Typeface

    在进行android开发过程中,忽然发现经常弹出来parseSdkContent failed 这个错误,然后google了下解决办法 方法1: 删除.android文件 重启eclipse. 该方法 ...

随机推荐

  1. cygrunsrv: Error starting a service: QueryServiceStatus: Win32 error 1062: 解决办法

    问题原因:很可能是/var/log的权限设置不正确.首先执行 mkpasswd 和 mkgroup 重新生成权限信息,再删除sshd服务,重新配置 解决办法: $ mkpasswd -l > / ...

  2. EasyUI - tab动态加载datagrid

    addTab: function() { $("#myTabs").tabs('add', { title: 'my title', closable: true, tools: ...

  3. 闲扯 Javascript 03 时钟和QQ延时框

    时钟 : 所用到得图片  : 开启定时器 setInterval  间隔型 setTimeout  延时型 停止定时器 clearInterval clearTimeout 效果思路 获取系统时间 D ...

  4. 功能间(两个form)数据交互的编程方法

    功能间数据交互的编程方法 现在框架具有在两个打开的功能之间进行通讯的机制.通讯是指,一个功能调用另外一个功能的方法,或者传递一些数据,并得到返回结果.比如处置单打开结算单,结算单保存后,将结算单号反填 ...

  5. java--从控制台读入一些数据

    学一些东西应该,学以致用: 现在我开始使用流的办法从控制台读取数据 import java.io.*; public class Demo2{ public static void main(Stri ...

  6. 运行复制的ZooKeeper 部署

    运行复制的ZooKeeper 运行ZooKeeper 在一个独立模式下是方便评估的, 一些开发,和测试. 但是在生产,你应该运行ZooKeeper 在复制模式.一个复制的servers group 在 ...

  7. 高级特性(8)- JavaBean构件

    8.1 为何使用Bean8.2 编写Bean的过程8.3 使用Bean构造应用程序 8.3.1 将Bean打包成JAR文件 8.3.2 在开发环境中组合Bean8.4 Bean属性与事件的命名模式8. ...

  8. 基于visual Studio2013解决C语言竞赛题之0705矩阵转置

     题目 解决代码及点评 /* 5. 写一函数,将一个3×3的矩阵转置. */ #include <stdio.h> #include <stdlib.h> void mai ...

  9. CEOI2014 day1 task3 Question

    题目 传送门. 算法 以下描述都举这个例子:\(x\)是\(11\),\(y\)是\(5\). 算法1 把\(x\)和\(y\)化成二进制,最多\(10\)位,那么\(x=1011_2\),\(y=0 ...

  10. Cocos2d-x CCTableView实现列表

    在ios程序设计中,会大量使用到tableview视图(UITableView),那么在cocos2d-x中,如果需要类似的列表,该如何实现呢?在引擎中参照ios中的UITableView实现了一个叫 ...