以下是按钮的自定义波纹样式:
按钮
<Button
android:id="@+id/stop"
style="@style/btn_start_style"
android:layout_width="fill_parent"
android:layout_height="48dp"
android:layout_margin="5dp"
android:layout_weight="1"
android:text="@string/start"
android:textSize="18dp"
android:textStyle="bold" >
</Button>
风格:btn_start_style
如果我在XML中设置“背景”,“样式”将无效,所以我在“样式”中设置“背景”。
<style name="btn_start_style" parent="android:style/Widget.Material.Button">
<item name="android:background">@drawable/btn_raised_start</item>
<item name="android:textColor">@color/white</item>
</style>
后台:btn_raised_start.xml
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="?attr/colorControlHighlight">
<item>
<shape android:shape="rectangle">
<corners android:radius="2dp" />
<solid android:color="@color/btn_start"/>
</shape>
</item>
单击“凸起的按钮”时,我想更改BackgroundColor。
btnStop.setBackgroundColor(getResources().getColor(R.color.btn_start_day));
但是当我用上面的代码更改BackgroundColor时,纹波消失了!