Android在代码中创建颜色_RGB与int型颜色互转
2016-06-27 11:39:54  By: shinyuu

一、Android Color介绍

Android中使用4个数字来表示颜色、分别是alpha、红(red)、绿(green)、蓝(blue)四个颜色值(ARGB)、每个数字取值0-255、因此一个颜色可以用一个整数来表示、为了运行效率、Android编码时用整数Color类实例来表示颜色

红、绿、蓝三个值是就是代表颜色的取值、而Alpha代表的是透明度、最低值为0、表示颜色完全透明、而此时RGB是什么取值都不重要了、Alpha最高可取值为255、表示颜色完全不透明、如果需要颜色透明、半透明、那么可以取值0-255中间的一些值、这常常用在前端图层绘制时、下面就提供几种创建颜色的方法和RGB与int型颜色互转


二、Android Color颜色创建代码

1、使用Color类的常量

Int color = Color.BULE;  // 创建一个蓝色


2、如果知道ARGB的取值、那么可以使用Color类的静态方法argb创建一个颜色

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


3、使用XML资源文件来表示颜色、这是一个扩展性比较好的方式、便于今后可以方便的修改颜色值

<?xml version=”1.0” encoding=”utf-8”>
<resources>
    <color name=”mycolor”>#7fff00ff</color>
</resources>


定义了一个名为mycolor颜色、在别的地方就可以引用mycolor来获取该颜色值、可以使用ResourceManager类中的getColor来获取该颜色、Java样例代码如下

Int color = getResources().getColor(R.color.mycolor);


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


三、RGB与int型颜色互转

1、将RGB颜色转化为int

int color = Color.rgb(red, green, blue);

2、将int颜色转化为RGB

int color = -4253158;  
int red = (color & 0xff0000) >> 16;  
int green = (color & 0x00ff00) >> 8;  
int blue = (color & 0x0000ff); 
String rgbColor = red + "," + green + "," + blue;


若资源对你有帮助、浏览后有很大收获、不妨小额打赏我一下、你的鼓励是维持我不断写博客最大动力

想获取DD博客最新代码、你可以扫描下方的二维码、关注DD博客微信公众号(ddblogs)

或者你也可以关注我的新浪微博、了解DD博客的最新动态:DD博客官方微博(dwtedx的微博)

如对资源有任何疑问或觉得仍然有很大的改善空间、可以对该博文进行评论、希望不吝赐教

为保证及时回复、可以使用博客留言板给我留言: DD博客留言板(dwtedx的留言板)

感谢你的访问、祝你生活愉快、工作顺心、欢迎常来逛逛


快速评论


技术评论

  • 该技术还没有评论、赶快抢沙发吧...
DD记账
top
+