java - 更改 Color 对象的 Alpha

标签 java android alpha

有没有一种方法可以将 aplha 添加到我可以从颜色字符串中获取的颜色。 因为现在我可以使用以下代码在没有 alpha 的情况下绘制我的颜色

      CircleOptions options = new CircleOptions().center(new LatLng(car.getLatitude(), car.getLongitude()))
          .radius(car.getRadius())
          .strokeColor(Color.argb(50,232,245,248))
          .strokeWidth(2)
          .fillColor(Color.parseColor(car.getColorString()));

这很好用。但我想让颜色更透明。有没有一种添加 alpha 的好方法来做这种颜色,因为我只能得到一个“ColorString”

最佳答案

颜色表示为 int,您可以用十六进制表示法表示它,例如 0xAARRGGBB,表示 Alpha、红色、绿色、蓝色。所以每个值都可以是 0 到 255。

这样,通过一些位运算就可以实现你想要的。

如果你想重置 alpha 值,

int newColor = 0x10000000 | (Color.parseColor(car.getColorString()) & 0xFFFFFF);

(0x10000000 表示新的 alpha 值 - 16 大约是 6.274% alpha,因为 100% 是 255)
(0xFFFFFF 表示我们只从颜色中获取 rgb 值)

See also

关于java - 更改 Color 对象的 Alpha,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26300980/

相关文章:

java - 有效地查找数组中的最大元素

java - 将原始值作为参数而不是引用传递给新方法后更新原始值

android - GraphView始终从零开始,动态数据

css - 在纯色背景上添加透明渐变

Qt 使用颜色和 alpha-map 绘制图标

java - 我是否正确使用 BigDecimal 类?我真的可以找人仔细检查我的代码,以确保我不会犯菜鸟错误

java - 删除类(class)时无法删除时段

android - 更改 SeekBar 拇指/指针速度

java - 如何在 RecyclerView 中显示 CardView(具有不同内容类型)

c# - xna 4 渲染目标与 alpha channel