android开发两种颜色混合计算方法

//ratio比例传递 0.5 就是两种颜色叠加混合的结果,也可以根据自己的需求调整比例
public static int mixColor(int color1, int color2, float ratio) {
	final float inverse = 1 - ratio;
	float a = (color1 >>> 24) * inverse + (color2 >>> 24) * ratio;
	float r = ((color1 >> 16) & 0xFF) * inverse + ((color2 >> 16) & 0xFF) * ratio;
	float g = ((color1 >> 8) & 0xFF) * inverse + ((color2 >> 8) & 0xFF) * ratio;
	float b = (color1 & 0xFF) * inverse + (color2 & 0xFF) * ratio;
	return ((int) a << 24) | ((int) r << 16) | ((int) g << 8) | (int) b;
}

发现SDK里的androidx.core.graphics.ColorUtils类有个方法blendARGB就可以直接实现,干嘛知道的那么少,哈哈哈。

posted @   yongfengnice  阅读(967)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
历史上的今天:
2019-04-22 web前端css清除浮动的方法总结
2019-04-22 Android数据格式化给一串数字添加分位符的解决方法
2017-04-22 圆角进度条,带数字居中显示的圆角进度条
2017-04-22 上下滑动控件
2017-04-22 window下Jekyll+github搭建自己的博客
2017-04-22 解决方案 git@github.com出现Permission denied (publickey)
2017-04-22 初始化并提交代码到github的步骤
点击右上角即可分享
微信分享提示