我想在图像顶部添加透明黑色并使其更暗。
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/rest_image"
android:layout_width="match_parent"
android:layout_height="150dp"
android:adjustViewBounds="true"
android:scaleType="centerCrop"
/>
</RelativeLayout>
我可以设置alpha参数,但颜色变化为白色。 我想制作像这样的较暗的图像。 我怎么能用xml或Java代码做到这一点。我会根据条件设置它。?
感谢。
答案 0 :(得分:22)
您需要的是所谓的着色。在您的ImageView
:
<ImageView
...
android:tint="#6F000000"
/>
答案 1 :(得分:2)
尝试第二个imageview将设置透明色。根据需要调整高度。
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/rest_image"
android:layout_width="match_parent"
android:layout_height="150dp"
android:adjustViewBounds="true"
android:scaleType="centerCrop"
/>
<ImageView
android:layout_width="match_parent"
android:layout_height="150dp"
android:background="#500000"
/>
</RelativeLayout>
答案 2 :(得分:0)
最简单/最快的解决方案是XML格式
在ImageView上添加第二层(可以是View,不必是ImageView),具有所需的颜色/ alpha。在需要时显示/隐藏它。
<ImageView
android:id="@+id/rest_image"
android:layout_width="match_parent"
android:layout_height="150dp"
android:adjustViewBounds="true"
android:scaleType="centerCrop"
/>
<View
android:id="@+id/overlay_image"
android:layout_width="match_parent"
android:layout_height="150dp"
android:background=“@color/yourColorWithAlpha"
/>
</RelativeLayout>
答案 3 :(得分:0)
您可以使用色调模式添加前景色调。
确保在前景色中添加 Alpha 通道。
foreground="##AARRGGBB"
AA = HEX 中的 alpha 通道 R、G、B = 红、蓝、绿。
<ImageView
android:id="@+id/vidthumbnail"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:foreground="#96222f3e"
android:foregroundTintMode="src_atop"/>