ImageView白色src变得透明

时间:2015-11-09 22:11:00

标签: android

我的布局中有以下内容:

<ImageView
    android:id="@+id/icon
    android:layout_width="@dimen/icon_size"
    android:layout_height="@dimen/icon_size"
    android:src="@drawable/ic_star"
    android:background="@drawable/control_circle"/>

这里是control_circle.xml的drawable:

<shape android:shape="oval" xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="@color/control_normal"/>
    <size android:width="16dp" android:height="16dp"/>
</shape>

ic_star.png只是我从Material Icons获得的白星。我得到的是一个蓝色圆圈(预期),带有星形切口而不是白色星形;也就是说,我可以通过星形切口看到这个图标背后的东西。它基本上看起来像使用DestOut的porter duff模式,src作为源,背景作为dest。

有人知道如何才能显示白色图标吗?

更新:

这是我得到的: Screen shot

您可以在底部看到主页中的FAB(带有+图标)覆盖了全屏对话框,使用70%alpha和更多操作按钮(类似于Gmail的收件箱)应用程序)。但是全白的星形图标被转换为ImageView中的透明区域。

1 个答案:

答案 0 :(得分:0)

此处的错误是将对话框布局的背景设置为白色,并将android:alpha设置为70%。这会导致所有嵌套的ImageView使用相同的alpha。相反,我需要通过像#AAFFFFFF这样的颜色将alpha设置为对话框的背景颜色。