【问题标题】:tinted overlay - negate tint effect for a specific element着色覆盖 - 取消特定元素的着色效果
【发布时间】:2015-03-18 22:54:32
【问题描述】:

我有一个完全被色调覆盖覆盖的布局(它是我的 RelativeLayout 中的最后一个元素)。

  1. 我有TextView1TextView2textColor 设置为红色(#FF0000)。
  2. 我的色调覆盖是灰色的,设置了透明度 - #88676767
  3. 我想让我的 TextView1 着色,但 TextView2 显示为红色 (#FF0000)。

我有没有办法为TextView2 计算颜色值X,所以当它覆盖有色调层时,它在用户看来是红色(#FF0000)?如果是这样,我该如何计算这个值?

【问题讨论】:

    标签: android-layout colors


    【解决方案1】:

    不,没有办法做到这一点。颜色计算为

    (color1.R*color1.A + color2.R*color2.A)/(color1.A+color2.A)

    color2 是您的叠加层且结果颜色为 255 时,此等式没有 color1.R in (0, 255)color1.A in (0, 1) 的解。

    this answer 中查找更多信息。

    【讨论】:

      猜你喜欢
      • 2010-12-28
      • 2011-06-08
      • 2014-05-02
      • 1970-01-01
      • 2015-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多