我想要在底部添加黑色透明以显示文字细节的图像。从服务器我将得到正常的图像,我想转换它如下。在下图中,您可以看到图像的底部是黑色透明的。
答案 0 :(得分:27)
试试这个
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/ur_image" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/gradient_bg" >
</FrameLayout>
和gradient_bg.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<gradient
android:angle="90"
android:centerColor="#59000000"
android:endColor="@android:color/transparent"
android:startColor="#000000" />
</shape>
答案 1 :(得分:3)
使用FrameLayout将另一个ImageView放在图像上方,并将其设置为src:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:angle="270"
android:startColor="#8000"
android:endColor="#0000"/>
</shape>
答案 2 :(得分:1)
这可以通过创建gradients.check this
来使用<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<gradient
android:startColor="#4C4C43"
android:endColor="#B8B894"
android:angle="270" />
</shape>
</item>
</selector
&GT;
答案 3 :(得分:1)
将AppCompatImageView与着色属性一起使用
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.AppCompatImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:tint="@color/black_transparent"//transparent color
android:scaleType="centerCrop"
android:src="@drawable/background_splash" />
</FrameLayout>
答案 4 :(得分:1)
您可以使用色调。
<ImageView
...
android:tint:"#64000000"
.../>
答案 5 :(得分:0)
您可以使用alpha属性
android:alpha="0.0" thats invisible
android:alpha="0.5" see-through
android:alpha="1.0" full visible