Android:将渐变可绘制为背景时按钮上缺少高程

时间:2017-03-29 14:06:08

标签: android material-design elevation

我有一个Button,我将背景设置为渐变可绘制。 具有渐变可绘制的按钮缺少高程,而所有其他按钮具有高程。

为什么带有渐变的按钮上缺少高程?有没有简单的方法来解决这个问题?

我的代码如下所示:

gradient.xml

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

    <item>

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

            <gradient
                android:type="radial"
                android:gradientRadius="250dp"
                android:startColor="@color/blue"
                android:endColor="@color/red"/>

            <corners android:radius="@dimen/round_corner_radius"/>

            <stroke
                android:width="5dp"
                android:color="@android:color/transparent"/>

        </shape>

    </item>

    <item android:top="7dp"
        android:left="7dp"
        android:right="7dp"
        android:bottom="7dp">

        <shape android:shape="rectangle" >

            <solid android:color="#88ffffff"/>
            <corners android:radius="@dimen/round_corner_radius"/>

        </shape>

    </item>

</layer-list>

activity.xml

...
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/button"
        android:background="@drawable/gradient"/>
...

1 个答案:

答案 0 :(得分:1)

我解决了我的问题。我不得不删除

<stroke
    android:width="5dp"
    android:color="@android:color/transparent"/>

问题可能是设定的颜色。没有笔划,按钮的行为就像普通的凸起按钮一样。