Button Ripple具有不同的selected_state颜色

时间:2016-01-07 00:56:50

标签: android button android-drawable

我有一个按钮,它通常是灰色的,按下后,它会将颜色变为蓝色。现在我想添加一个效果,它从我按下的地方开始颜色为蓝色并且涟漪并填充整个按钮并保持纯色(蓝色)。我知道我可以为按钮添加涟漪效果并屏蔽它,但它不能与selected_states一起使用。我得到的最接近的代码如果他们按住按钮它会涟漪,但这是关于它。感谢。

<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:color="@color/light_blue"
tools:targetApi="lollipop">
<item>
    <selector>
        <item android:state_pressed="true">
            <shape android:shape="rectangle">
                <corners android:radius="5dp" />
                <solid android:color="@color/light_blue" />
            </shape>
        </item>
        <item android:state_selected="true">
            <shape android:shape="rectangle">
                <corners android:radius="5dp" />
                <solid android:color="@color/light_blue" />
            </shape>
        </item>
        <item>
            <shape android:shape="rectangle">
                <corners android:radius="5dp" />
                <solid android:color="@color/sdk_dark_grey2" />
            </shape>
        </item>
    </selector>
</item>

1 个答案:

答案 0 :(得分:0)

您是否已将onClickListener设置为按钮?