Utilice el botón de conmutación estilo Android 4.0

Lo que estoy tratando de hacer


Estoy intentando utilizar en mi diseño el togglebutton de Android 4.0. Para ello seleccioné el tema = Theme.Holo.Light. Cuando tomo el togglebutton de allí su ese cuadrado con la línea verde, si el botón está permitido.

Pero me gustaría utilizar el togglebutton como si estuvieran allí en la configuración de arriba (echar un vistazo a la printscreen).

Pregunta


¿Cómo puedo usar thise togglebutton? Algunos Codesnippets o un tutorial rápido sería genial!

Atentamente

safari

Imagen


captura de pantalla de los botones

Nueva Edición: Ahora hice un backport completo del Switch de nuevo a API Nivel 8 y poner en github: https://github.com/ankri/SwitchCompatLibrary


El antiguo post con mi implementación personalizada del Switch:

Estoy un poco tarde para la fiesta, pero tuve el mismo problema. Tomé el código fuente del otro poste en este thred e hice mi propia versión del interruptor.

Puede encontrar el código fuente y la documentación en mi sitio web

Esto es lo que parece:

SwitchButtonDemo captura de pantalla

editar: Enlace e imagen actualizados

ACTUALIZACIÓN: Nuevas imágenes funcionan en fondos claros y oscuros. Las imágenes originales todavía están disponibles.

Además, como alguien señala en los comentarios, asegúrese de guardarlos como "* .9.png", es decir, "switch_on_on_db.9.png", etc.


La respuesta de Ankri es grande, pero un poco pesada. Además, utiliza los interruptores de estilo 4.2 en contraposición a los botones de estilo antiguo (y en mi opinión, más bonitos) 4.1. Para una solución rápida, hice un dibujable para que pueda estilo de su togglebutton a parecerse a un interruptor.

En primer lugar, aquí está el estilo del botón:

<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/switch_on_on_db" android:state_checked="true" android:state_pressed="true"/> <item android:drawable="@drawable/switch_on_on_db" android:state_checked="true" android:state_focused="false"/> <item android:drawable="@drawable/switch_off_off_db" android:state_checked="false" android:state_pressed="true"/> <item android:drawable="@drawable/switch_off_off_db" android:state_checked="false" android:state_focused="false"/> </selector> 

que se refieren a estas imágenes:

Introduzca aquí la descripción de la imagenIntroduzca aquí la descripción de la imagen

Descargue las imágenes originales de aquí:

Viejo apagado

Edad en

Por último, puede diseñar el togglebutton de la siguiente manera:

 <ToggleButton android:id="@+id/ParamToggleButton" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/toggletoswitch" android:textOff="" android:textOn=""/> 

ACTUALIZAR:

Las versiones de Jelly Bean (aunque no idénticas) ya están disponibles:

Introduzca aquí la descripción de la imagenIntroduzca aquí la descripción de la imagen

Viejo apagado

Edad en

Si la aplicación apunta a nivel 14 o superior. Utilice el widget Switch y asegúrese de que el tema de su aplicación sea "Theme.Holo" o "Theme.Holo.Light"

Sin embargo, si desea apuntar el nivel de api en 2.3 tiene que hacer diseño personalizado. Creo que es bastante complicado explicar sobre eso, te daré un ejemplo.

Puedes encontrar la implementación real del botón "Switch" aquí .

Bueno, sólo puede obtener esa fuente y poner en su proyecto. Tendrás algún error pero no es tan difícil resolverlo.

Gran solución por encima … gracias! (sin nombre dado?) Pensé que alguien podría ser capaz de utilizar mi xml que trabajó para mí para hacer el togglebutton parecen un interruptor:

  <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="right|center_vertical" android:orientation="horizontal" > <TextView android:id="@+id/tv_switchToggle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="10dip" android:layout_marginTop="0dip" android:text="@string/shake_to_add" android:textAppearance="?android:attr/textAppearanceMedium" android:textColor="#ffffff" /> <ToggleButton android:id="@+id/switchToggle" android:layout_width="75dp" android:layout_height="20dp" android:layout_margin="5dip" android:background="@drawable/togglebutton" android:textOff="" android:textOn="" /> </LinearLayout> 

@ drawable / togglebutton se refiere al selector descrito anteriormente. ¡Gracias de nuevo!

  • Android: Especifique dos imágenes diferentes para el togglebutton mediante XML
  • Cómo cambiar el estado ToggleButton mediante programación?
  • Android - ¿Espacio entre TextView y Togglebutton?
  • Android Toggle Button en ActionBar
  • Pantalla personalizada de botón de conmutación de Android
  • Botón de alternancia en el cajón de navegación
  • ¿Es posible crear un ToggleButton sin texto?
  • Colocación de etiquetas de texto ToggleButton para estado activado y desactivado
  • Cómo realizar vinculación de datos de dos vías con un ToggleButton?
  • Cómo eliminar el relleno del botón de conmutación en Android
  • Botón de selección de Android MenuItem
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.