我正在尝试制作一个自定义按钮,该按钮的行为与Android中的“按下按钮”具有相同的背景图像。如何模仿Android中按下按钮的行为?
按下更改我的按钮的图像(颜色较暗),但我似乎无法得到正确的焦点/集中&按状态。 当您在默认按钮上松开手指时,会有一个圆圈填满整个按钮,但它不会发生在我的身上。
这是我的代码:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:state_pressed="false" android:drawable="@drawable/fertig_focussed" />
<item android:state_focused="true" android:state_pressed="true" android:drawable="@drawable/fertig_focussed_pressed" />
<item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/fertig_pressed"/>
<item android:drawable="@drawable/fertig_regular" />
</selector>
提前感谢!
正在使用的圆圈是['RippleDrawable'](https://developer.android.com/reference/android/graphics/drawable/RippleDrawable.html),而不是'StateListDrawable'。 'RippleDrawable'仅适用于API 21+。 –
这就是我正在寻找的,谢谢!不幸的是, API不适用于我,是否有一种方法可以实现它仅适用于21+以上的设备? – lukelle
嗯,你可以在res/drawable文件夹中有一个默认的StateListDrawable。然后,您可以在res/drawable-v21中使用RippleDtawable,这将在API 21+上使用。 –