如何使按钮具有波纹和自定义形状

时间:2017-07-04 18:47:05

标签: android android-animation android-button android-background

当我尝试将它们中的两个放在一起时,它们会相互覆盖或背景变得透明。

按钮形状:

<stroke
    android:width="1dp"
    android:color="#048403"/>
<corners
    android:radius="2dp" />

<padding
    android:left="5dp"
    android:right="5dp"
    android:top="3dp"
    android:bottom="3dp" />
<solid
    android:color="@color/safeGreen" />

按钮波纹:

<ripple
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:color="@color/darkGreen">
    <item android:drawable="@color/safeGreen"/>
</ripple>

2 个答案:

答案 0 :(得分:0)

发布此消息后不久,我发现此解决方案适用于任何人有兴趣的情况。您可以创建一个新资源,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
        android:color="?android:attr/colorControlHighlight">
    <item android:id="@android:id/mask">
        <shape android:shape="rectangle">
            <solid android:color="@color/darkGreen" />
            <corners android:radius="2dp" />
        </shape>
    </item>
    <item android:drawable="@drawable/button_shape" />
</ripple>

答案 1 :(得分:0)

试试这个

<?xml version="1.0" encoding="utf-8"?>

<item>
    <shape android:shape="rectangle">
        <stroke
            android:width="1dp"
            android:color="#048403"/>
        <corners
            android:radius="2dp" />

        <padding
            android:left="5dp"
            android:right="5dp"
            android:top="3dp"
            android:bottom="3dp" />
        <solid
            android:color="#1b711b" />
    </shape>
</item>