如何制作透明的白色渐变背景

时间:2018-12-02 14:15:15

标签: android xml android-layout gradient android-drawable

我想在按钮背景上实现确切的效果,  但还没有成功..!有帮助吗?

这是图片

enter image description here


我到目前为止的尝试(gradient_bg.xml)

 <?xml version="1.0" encoding="utf-8"?>
<shape 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <gradient
        android:angle="90"
        android:endColor="@android:color/transparent"
        android:startColor="#e3ffffff" />

</shape>

..结果不是很多。.

enter image description here

布局

       <TextView
            fontPath="fonts/Roboto-Regular.ttf"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="start"
            android:layout_marginBottom="-20dp"
            android:gravity="start"
            android:text="@string/dummy_big"
            android:textColor="@color/gray_dark"
            android:textSize="13sp"
            tools:ignore="MissingPrefix" />

          <FrameLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@drawable/gradient_bg">

                <Button
                    fontPath="fonts/Roboto-Bold.ttf"
                    android:layout_width="match_parent"
                    android:layout_height="40dp"
                    android:layout_gravity="center"
                    android:layout_marginStart="120dp"
                    android:layout_marginTop="20dp"
                    android:layout_marginEnd="120dp"
                    android:layout_marginBottom="20dp"
                    android:background="@drawable/round_solid_primary"
                    android:clickable="true"
                    android:foreground="?selectableItemBackground"
                    android:gravity="center_vertical|center_horizontal"
                    android:text="@string/view_more"
                    android:textColor="@color/ef_white"
                    android:textSize="15sp"
                    tools:ignore="MissingPrefix" />

            </FrameLayout>

2 个答案:

答案 0 :(得分:1)

尝试以下代码可以帮助您解决问题

<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
    android:endColor="#ffffff"
    android:centerColor="#90ffffff"
    android:startColor="#65ffffff"
    android:angle="-90"/>
</shape>

答案 1 :(得分:0)

在文本视图下方使用,并使用相对布局或其他布局在textview下方对齐按钮

   android:requiresFadingEdge="horizontal"
   android:fadingEdgeLength="30dp"

属性将为textview创建褪色边缘效果。

   <TextView
        fontPath="fonts/Roboto-Regular.ttf"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="start"
        android:layout_marginBottom="-20dp"
        android:gravity="start"
        android:text="@string/dummy_big"
        android:textColor="@color/gray_dark"
        android:textSize="13sp"
        android:requiresFadingEdge="verticle"
        android:fadingEdgeLength="0dp"
        tools:ignore="MissingPrefix" />