java int 转 color_ColorUtil【Color工具类(color整型、rgb数组、16进制互相转换)】

packagecom.why.project.colorutildemo.util;importandroid.graphics.Color;/*** Created by HaiyuKing

* Used Color工具类(color整型、rgb数组、16进制互相转换)*/

public classColorUtil {/**Color的Int整型转Color的16进制颜色值【方案一】

* colorInt - -12590395

* return Color的16进制颜色值——#3FE2C5

**/

public static String int2Hex(intcolorInt){

String hexCode= "";

hexCode= String.format("#%06X", Integer.valueOf(16777215 &colorInt));returnhexCode;

}/**Color的Int整型转Color的16进制颜色值【方案二】

* colorInt - -12590395

* return Color的16进制颜色值——#3FE2C5

**/

public static String int2Hex2(intcolorInt){

String hexCode= "";int[] rgb =int2Rgb(colorInt);

hexCode=rgb2Hex(rgb);returnhexCode;

}/**Color的Int整型转Color的rgb数组

* colorInt - -12590395

* return Color的rgb数组 —— [63,226,197]

**/

public static int[] int2Rgb(intcolorInt){int[] rgb = new int[]{0,0,0};int red =Color.red(colorInt);int green =Color.green(colorInt);int blue =Color.blue(colorInt);

rgb[0] =red;

rgb[1] =green;

rgb[2] =blue;returnrgb;

}/**rgb数组转Color的16进制颜色值

* rgb - rgb数组——[63,226,197]

* return Color的16进制颜色值——#3FE2C5

**/

public static String rgb2Hex(int[] rgb){

String hexCode="#";for(int i=0;i

rgbItem= 0;

}else if(rgbItem > 255){

rgbItem= 255;

}

String[] code= {"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"};int lCode = rgbItem / 16;//先获取商,例如,255 / 16 == 15

int rCode = rgbItem % 16;//再获取余数,例如,255 % 16 == 15

hexCode += code[lCode] + code[rCode];//FF

}returnhexCode;

}/**Color的16进制颜色值 转 Color的Int整型

* colorHex - Color的16进制颜色值——#3FE2C5

* return colorInt - -12590395

**/

public static inthex2Int(String colorHex){int colorInt = 0;

colorInt=Color.parseColor(colorHex);returncolorInt;

}/**Color的16进制颜色值 转 rgb数组

* colorHex - Color的16进制颜色值——#3FE2C5

* return Color的rgb数组 —— [63,226,197]

**/

public static int[] hex2Rgb(String colorHex){int colorInt =hex2Int(colorHex);returnint2Rgb(colorInt);

}/**Color的rgb数组转Color的Int整型

* rgb - Color的rgb数组 —— [63,226,197]

* return colorInt - -12590395

**/

public static int rgb2Int(int[] rgb){int colorInt = 0;

colorInt= Color.rgb(rgb[0],rgb[1],rgb[2]);returncolorInt;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值