Selector de Android con imagen de fondo y degradado

Sé que hay publicaciones similares a esta, pero no pude encontrar mi respuesta en ninguna de ellas. Por lo tanto, tengo este XML dibujable:

<code><?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="true">
    <bitmap
        android:src="@drawable/bm_btn_background"
        android:tileMode="repeat"
        android:gravity="center" />
</item>
<item android:state_enabled="true">
    <shape android:shape="rectangle">
        <gradient
            android:startColor="#a0e0b071"
            android:endColor="#a0a67637"
            android:angle="270" />
        <stroke
            android:width="1dp"
            android:color="#5c3708" />
        <corners
            android:radius="5dp" />
        <padding
            android:left="10dp"
            android:top="10dp"
            android:right="10dp"
            android:bottom="10dp" />
    </shape>
</item>
<item android:state_pressed="true" >
    <shape>
        <gradient
            android:startColor="#a0a67637"
            android:endColor="#a0e0b071"
            android:angle="270" />
        <stroke
            android:width="1dp"
            android:color="#5c3708" />
        <corners
            android:radius="5dp" />
        <padding
            android:left="10dp"
            android:top="10dp"
            android:right="10dp"
            android:bottom="10dp" />
    </shape>
</item>
</code>

Estoy tratando de crear un botón con una imagen repetida como fondo y un degradado aplicado. Con este código solo veo la imagen de fondo, no el degradado ni el borde y las esquinas redondeadas. Además, cuando hago clic en el botón, no cambia (se supone que el degradado debe cambiar). No sé qué está mal con este código? Si en lugar de un selector utilizo una lista de capas, obtengo el resultado deseado pero tampoco cambia cuando presiono el botón. ¡Gracias por tu ayuda!

Respuestas a la pregunta(4)

Su respuesta a la pregunta