A: 初始颜色 B: 目标颜色

获取10个 A到B渐变的颜色值依次展示实现颜色渐变效果

思路:通过16进制字符串,对应拆分为RGB色值
举例:“#FB5D22” R: FB; G:5D; B:22;

获取到AB的RGB16进制色值后分别转换为10进制,同比例加减数值,实现颜色变化效果。


private void getColor() {// Color.rgb(210, 233, 251);// 方式一colors = 0xD2E9FB;//一个RGB分别为8位,获取R的色值右移16位a[0] = colors >> 16;//获取G的色值右移8位,取低8位,a[1] = (colors >> 8) & 0xff;//取低8位a[2] = colors & 0xff;// 方式二b = RGBString2Int("1d3652");byABGetStep();}

16进制字符串转10进制

/*** 将指定字符串src,以每两个字符分割转换为16进制形式* */public static int[] RGBString2Int(String src) {int[] ret = new int[4];for (int i = 0; i < 5; i += 2) {ret[i / 2] = Integer.parseInt(src.substring(i, i + 2), 16);}return ret;}

设置每次加减步长

private void byABGetStep() {for (int i = 0; i < 3; i++) {int step = Math.abs((a[i] - b[i]));c[i] = step / COLOR_SUM;if (step % COLOR_SUM > (COLOR_SUM / 2)) {c[i]++;}}}

现在:
private int[] c = new int[3];// 步长值
private int[] a = new int[3];// 初始值
private int[] b = new int[3];// 目标值
private int[] d = new int[3];// 当前值
通过循环设置d的值,在屏幕上绘制出来即可

/*** 绘制画面*/public void myDraw() {try {canvas = sfh.lockCanvas();if (canvas != null) {canvas.drawColor(Color.rgb(d[0], d[1], d[2]));// 刷新屏幕,用背景色刷新canvas.save(); // 注意canvas.save()与canvas,restore()是成对存在的canvas.rotate(oneEartRatOut, ratX, ratY); // 旋转控制的角度canvas.drawBitmap(bmpEart, bmpEartX, bmpEartY, paint);// 绘制地图canvas.restore();}} catch (Exception e) {} finally {if (canvas != null) {sfh.unlockCanvasAndPost(canvas);}}}

颜色渐变、#16进制转RGB颜色(转Int)相关推荐

  1. 批量转换——颜色代码(16进制)与RGB

    调研 语义分割 各大公开数据集色号时,发现Cityscapes的色号 为16进制 需要的是RGB的值 颜色码转换--网页 用网页来回转换 复制的时候总出现问题(自己的原因,总复制错行) 如果觉得麻烦可 ...

  2. python 自定义进制转换_[python]从零开始学python——颜色的16进制于RGB之间的转换...

    在学习openstack的时候,发现openstack是python开发的:学习mininet自定义拓扑,发现mininet是python开发的:看看ryu,还是python开发的--于是心中升起了自 ...

  3. 16进制 转RGB颜色

    .h中 @interface UIColor (Hex) + (UIColor *)colorWithHexString:(NSString *)stringToConvert; @end .m中 # ...

  4. python使用matplotlib可视化、使用英文单次或者缩写指定使用的颜色、使用16进制的RGB字符串指定颜色、使用RGB或者RGBA数字元组指定颜色

    python使用matplotlib可视化.使用英文单次或者缩写指定使用的颜色.使用16进制的RGB字符串指定颜色.使用RGB或者RGBA数字元组指定颜色 目录

  5. RGB 颜色透明16进制表示

    RGB 颜色透明16进制表示 列如:白色全透明 #00FFFFFF,白色半透明 #1AFFFFFF 100% 00 99% 03 98% 05 97% 07 96% 0A 95% 0D 94% 0F ...

  6. RGB颜色与16进制色以及透明色

    转载请标明出处:http://blog.csdn.net/liang5630/article/details/43483331 ,本文出自:[刘宏亮的博客] RGB颜色与16进制色以及透明色是我们在开 ...

  7. js 根据深浅色背景,动态设置黑色白色文字颜色。判断颜色是否为深色,rgb转16进制,16进制转rgb

    效果图: 根据深浅色背景,返回黑白文字颜色. 第一版: 代码: <!DOCTYPE html> <html lang="en"> <head>& ...

  8. 【图片】Python对RGB颜色与16进制颜色进行互转

    RGB颜色被称为"真彩色",是Photoshop中默认使用的颜色,也是最常用的一种颜色模式.RGB模式的图像由3个颜色通道组成,分别为红色通道(Red).绿色通道(Green)和蓝 ...

  9. js 颜色16进制转RGB方法

    //颜色16进制转RGB方法 String.prototype.colorRgb = function(){var sColor = this.toLowerCase();//十六进制颜色值的正则表达 ...

最新文章

  1. ASP Win7旗舰版中的IIS配置asp.net的运行环境
  2. LeetCode-动态规划基础题-63. 不同路径II
  3. 租金 预测_如何预测租金并优化租赁期限,从而节省资金
  4. 理论基础 —— 线性表 —— 双向链表
  5. java字符后移_java把字符串参数往后移3位后输出
  6. python官网的sdk下载详细步骤-Python SDK
  7. webview 模拟点击_Android如何基于坐标对View进行模拟点击事件详解
  8. 单片机阵列式键盘实验C语言,单片机4×4矩阵式键盘的课程设计
  9. 怪物之心无法触发_《勇者斗恶龙 怪兽篇:旅团之心》怪物生方法及生规则研究 - 电玩巴士...
  10. 职业生涯规划访谈记录关于计算机专业,计算机专业职业生涯规划书
  11. 苹果电脑上几款不错的cad绘图软件
  12. helm和operator
  13. vue-i18n 用法
  14. CPU平均负载过高检查(iowait负载高)
  15. 专业字体设计编辑Glyphs 3
  16. docker 容器内安装ps命令
  17. 栈和队列的基本操作(栈和队列的区别)
  18. WooCommerce API Keys的生成和保存机制
  19. 定时器(Timer)
  20. 浪潮服务器开机板载卡显示FF,浪潮服务器安装操作系统简要步骤说明

热门文章

  1. Java复习第11天---11.2---Java8新特性---Stream流获取方式和常用方法1
  2. solor快速_Solr快速入门
  3. html5 头部阴影,兼容各种主流浏览器的CSS阴影效果
  4. “三个成语”揭开瞻博网络的创新密码
  5. SpringBoot实现发送邮件、发送微信公众号推送
  6. 优版权x海潮宇宙音乐节梦幻联动,爆发新活力!
  7. 快速排序(适用于C语言初学者,附完整代码)
  8. 怎么用c语言打开文件6,c语言中用什么来打开文件
  9. 如何设计Mondrian模式(Mondrian4.)
  10. Pandas 进阶知识学习