在图像底部添加阴影

Add shadows at the bottom of image

如何在图像(右下角)上添加阴影以使标题清晰可见。 请参见下图。

您可以使用具有渐变颜色和 alpha 的 png 图像,将其放在横幅图像的底部。你的名字文字在图片上。

我写了一个应用,效果一样。我所做的是,我创建了一个 FrameLayout 它有 ImageView 和另一个 View 它有相同的ImageView 的高度。然后我向 View.

添加透明渐变背景

示例:

布局文件:

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="180dp"
        android:src="@drawable/image"
        android:adjustViewBounds="true" />

    <View
        android:layout_width="match_parent"
        android:layout_height="180dp"
        android:background="@drawable/gradient" />

</FrameLayout>

drawable/gradient.xml

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <gradient
        android:angle="90"
        android:endColor="#00ffffff"
        android:startColor="#aa000000"
        android:centerColor="#00ffffff" />
</shape>

创建可绘制文件gradient.xml

<gradient
    android:angle="90"
    android:endColor="#00ffffff"
    android:startColor="#aa000000"
    android:centerColor="#00ffffff" />

如下图使用ImageView

        <FrameLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:foreground="@drawable/gradient">

        <androidx.appcompat.widget.AppCompatImageView
            android:layout_width="match_parent"
            android:layout_height="240dp"
            android:src="@drawable/ic_launcher_foreground"
            android:adjustViewBounds="true"
            android:scaleType="fitCenter"
            android:id="@+id/imageView"/>
        </FrameLayout>