如何淡化图像的一部分

时间:2017-03-29 06:33:23

标签: android android-layout android-view opacity

我有一种逐渐着色的简单圆环图。我希望这个甜甜圈根据价值而褪色。例如,如果值为35,则我的甜甜圈的35%不会褪色,65%会褪色。我不想要任何动画。

这是我想要实现的一个例子:

enter image description here

没有遮罩功能的甜甜圈代码:

<ImageView
        android:id="@+id/imageView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:srcCompat="@drawable/donut"
        android:layout_alignTop="@+id/imageView"
        android:layout_marginStart="10dp"
        android:layout_marginTop="10dp"/>

2 个答案:

答案 0 :(得分:2)

我不知道android设计,但一些网页设计逻辑可能有所帮助。 您可以在图像上创建一个非透明面板,并为其提供图像的精确宽度和高度。因此,当您希望显示20%的图像时,您只需向面板80%并正确对齐它。

最好的问候。

答案 1 :(得分:1)

您还可以使用以下步骤将一些遮罩与半透明图像结合使用。

  • 创建一个黑色/白色甜甜圈,例如35%,
  • 用这个甜甜圈掩盖你的半透明物质(例如使所有黑色部分完全透明)
  • 将此蒙面图像用作全彩色甜甜圈的叠加层。

这将使您的部分褪色甜甜圈遵循与原始相同的轮廓。

对不起,我手头没有任何掩码,但这些步骤可以达到预期的效果。