¿Cómo puedo diseñar un Android Switch?

El widget de cambio introducido en API 14 está diseñado de manera predeterminada con holo theme. Quiero darle un estilo un poco diferente, cambiando sus colores y su forma un poco por motivos de marca. ¿Cómo se puede hacer esto? Sé que debe ser posible, ya que he visto la diferencia entre el ICS predeterminado y el tema de TouchWiz de Samsung

enter image description here

Supongo que necesitaré algunos modelos imprimibles, y he visto algunos estilos en http://developer.android.com/reference/android/R.styleable.html con Switch_thumb y Switch_track que se parecen a lo que podría estar buscando . Simplemente no sé cómo usarlos.

Estoy usando ActionbarSherlock si eso hace la diferencia. Solo los dispositivos con API v14 o superior podrán usar un interruptor, por supuesto.

Puede definir los elementos dibujables que se utilizan para el fondo y la parte del conmutador como esta:

 

Ahora necesita crear un selector que defina los diferentes estados para el conmutador dibujable. Aquí las copias de las fonts de Android:

       

Esto define el thumb drawable, la imagen que se mueve sobre el fondo. Hay cuatro imágenes de nueve parches utilizadas para el control deslizante:

La versión desactivada (versión xhdpi que usa Android) La versión desactivada
El control deslizante presionado: El control deslizante presionado
El control deslizante activado (en estado): El control deslizante activado
La versión predeterminada (estado desactivado): enter image description here

También hay tres estados diferentes para el fondo que se definen en el siguiente selector:

      

La versión desactivada: La versión desactivada
La versión enfocada: La versión enfocada
Y la versión predeterminada: la versión predeterminada

Para tener un interruptor con estilo simplemente cree estos dos selectores, configúrelos en su Vista de interruptor y luego cambie las siete imágenes al estilo que desee.

Es una asombrosa respuesta detallada de Janusz. Pero solo por el bien de las personas que vienen a esta página para obtener respuestas, la forma más fácil es en http://android-holo-colors.com/ (enlace inactivo) vinculado desde Android Asset Studio.

Una buena descripción de todas las herramientas está en AndroidOnRocks.com (sitio fuera de línea ahora)

Sin embargo, recomiendo a todo el mundo que lea la respuesta de Janusz, ya que aclarará la comprensión. Usa la herramienta para hacer cosas muy rápido

Puede personalizar estilos de material estableciendo diferentes propiedades de color. Por ejemplo , tema de aplicación personalizada

  

Tema de cambio personalizado

  

Puede personalizar la pista del interruptor y cambiar el pulgar como en la imagen de abajo definiendo xml drawables. Para más información http://www.zoftino.com/android-switch-button-and-custom-switch-examples

seguimiento personalizado y pulgar

Una forma alternativa y mucho más sencilla es usar formas en lugar de 9 parches. Ya se explica aquí: https://stackoverflow.com/a/24725831/512011