Botón de ondulación de androide con fondo

Creé con éxito un botón de la ondulación en androide 5.0 usando XML. Mi código es el siguiente:

<?xml version="1.0" encoding="utf-8"?> <!-- the flat button to be used in app --> <!-- define the ripple --> <ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="?android:colorControlHighlight"> <!-- the ripple object --> <item android:id="@android:id/mask"> <!-- button shape (w/ radius) --> <shape android:shape="rectangle"> <!-- radius of vertices --> <corners android:topLeftRadius="7dp" android:topRightRadius="7dp" android:bottomLeftRadius="7dp" android:bottomRightRadius="7dp" /> <!-- color accent (not working) --> <solid android:color="?android:colorAccent" /> </shape> </item> </ripple> 

Tengo un problema con el botón: el color de fondo del botón no cambiará. También he intentado:

 <solid android:color="#0000ff" /> 

El fondo sigue siendo transparente (el colorAccent no funciona).

¿Cómo debo configurar el rectángulo (el botón) a azul si no a través de la

 <solid/> 

¿propiedad?

Gracias

El uso del @android:id/mask define la capa como una máscara, que sólo se utiliza para los bordes de recorte y no se dibuja. Eliminar el atributo id debería darle lo que está buscando. Además, sólo puede utilizar el atributo android:radius si las esquinas son todas del mismo radio.

 <?xml version="1.0" encoding="utf-8"?> <ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="?android:attr/colorControlHighlight"> <item> <shape android:shape="rectangle"> <corners android:radius="7dp" /> <solid android:color="?android:attr/colorAccent" /> </shape> </item> </ripple> 
  • Cómo crear efecto de rizo en un diseño sencillo
  • ¿Cómo agregar efecto de rizado a las preferencias en android?
  • Cómo crear efecto de rizo para pre-lollipop
  • Botón de Toggle con estilo de botón sin bordes - ¿cómo obtener el fondo en estado marcado?
  • Obtenga el efecto de ondulación en RecyclerView con elementos que contengan otro color de fondo
  • RippleDrawable creada programaticamente se ve diferente de su contraparte xml
  • SetBackgroundResource actúa diferente de setBackground con RippleDrawable
  • Android Ripple Effect + Elevación en las vistas que no son de botón
  • ¿Cómo manejar el efecto Ripple en 9-patch y CardView, y tener control sobre los estados del selector?
  • Efecto de ondulación en los elementos desplegables de Spinner de fondo de color (appcompat-v7 V21)
  • Touch feedback con RecyclerView y CardView
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.