[Android]百分制透明度怎么转换为十六进制透明度

在Android中通常用6为十六进制数表示一个颜色,比如下面这个表示黑色:

复制代码
<color name="c">#000000</color> 

通过在前面加两位十六进制来表示当前颜色的透明度,比如:

复制代码
<color name="c">#FF000000</color> 

00表示100%透明,FF表示不透明。

那么怎么表示一个百分之十六透明度的黑色呢?

百分制从高到低表示透明度的范围:100%到0%(或者从1到0)

十六进制从高到低表示透明度的范围:00到FF(或者从0到255)

可以看到百分制和十六进制表示颜色的取值互相反的,即百分制100表示完全透明,而十六进制00表示完全透明,所以要先求出百分之十六对应的"不透明度",即100% - 16% = 84%,然后用FF(也就是255)乘以84%(也就是0.84)可以得到214,转化为十六进制就是D6。

所以用十六进制表示透明度为百分之十六的黑色为:

复制代码
<color name="c">#D6000000</color> 

其他透明度的求发类似。

相关推荐
中微子几秒前
React 执行阶段与渲染机制详解(基于 React 18+ 官方文档)
前端
唐某人丶1 分钟前
教你如何用 JS 实现 Agent 系统(2)—— 开发 ReAct 版本的“深度搜索”
前端·人工智能·aigc
中微子2 分钟前
深入剖析 useState产生的 setState的完整执行流程
前端
诺诺Okami3 分钟前
Android Framework-Launcher-UI和组件
android
遂心_27 分钟前
JavaScript 函数参数传递机制:一道经典面试题解析
前端·javascript
小徐_233337 分钟前
uni-app vue3 也能使用 Echarts?Wot Starter 是这样做的!
前端·uni-app·echarts
RoyLin41 分钟前
TypeScript设计模式:适配器模式
前端·后端·node.js
遂心_1 小时前
深入理解 React Hook:useEffect 完全指南
前端·javascript·react.js
Moonbit1 小时前
MoonBit 正式加入 WebAssembly Component Model 官方文档 !
前端·后端·编程语言
潘潘潘1 小时前
Android线程间通信机制Handler介绍
android