Botón de activación de Android apariencia personalizada

He estado tratando de personalizar el aspecto del botón de alternar, pero sin éxito. Así es como quiero que se vea:

enter image description here

¿Puede alguien darme un tutorial?

crear toggle_selector.xml en res / dibujable

     

aplicar el selector a su botón de alternar

  

Nota: para eliminar el texto que utilicé siguiendo el código anterior

 textOff="" textOn="" 

No sé si esta es la mejor solución, pero funcionó bien para mí:

1.- Decide qué tan grande quieres el botón para alternar. En mi caso ancho 56dp y altura 76dp.

2.- Crea el ícono configurado 56px-76px para mdpi, 84px-113px hdpi, lo mismo para xhdpi y xxhdpi

3.- Mueva los icons en la carpeta dibujable correspondiente. En mi caso, 20 icons 5 en cada carpeta, llamados ic_name1_on, ic_name1_off […] ic_name5_off

4.- Crea los siguientes archivos xml en una nueva carpeta llamada dibujable (si aún no existe):

  • ic_name1_toggle.xml
  • ic_name1_toggle_bg.xml
  • ic_name2_toggle.xml
  • (…)
  • ic_name5_toggle_bg.xml

5.- En ic_name1_toggle.xml, el código debe ser:

     

6.- En ic_name1_toggle_bg.xml, el código debe ser:

      

7.- Finalmente en su layout.xml:

  

Creo que necesitas definir un fondo personalizado para tu botón. Eche un vistazo a Developer Guide para personalizar el fondo de un Botón .

Sin embargo, en el paso tres, cree un nuevo archivo XML en el res/drawable/ directory Use este Xml:

      

El elemento android:state_checked="true" es lo que define ese estado como el fondo marcado.

Hazme saber si esto funciona para ti.

Crear selector

     

y úsalo como fondo para tu ToggleButton.