Android: Cómo crear el botón de diapositiva (encendido / apagado)
Me gustaría crear un botón de diapositiva (= algo como conmutador) con dos estados: encendido y apagado para que el usuario tenga que presionar el botón y deslizarlo para cambiar el estado (algo similar como desbloquear control deslizante pero no cruzar toda la pantalla). ¿Tienes alguna idea de cómo hacerlo? Realmente traté de encontrar la respuesta, pero no he tenido éxito.
¡Muchas gracias!
- Cómo agregar el botón en ActionBar (Android)?
- ¿Cómo puedo crear botones positivos y negativos en diálogos personalizados?
- Botón personalizado: cambiar el estilo cuando se presiona
- ¿Fijó imagen en un botón en androide?
- Android: Utilizar colores de resaltado predeterminados en un botón personalizado
- Botón con el icono izquierdo y el texto perfectamente alineados
- El efecto Ripple no funciona en RelativeLayout
- Botón androide setPressed después onClick
- Android - Botones dinámicos ListView para cada fila que llama a los oyentes dinámicos
- Android Button drawableLeft - cómo codificarlo (no xml)
- Verde del botón del androide
- Android botones no rectangulares, cómo manejar esto?
- ¿Cómo agregar un botón en android?
// en su diseño de diseño la línea abajo
<RelativeLayout android:layout_width="wrap_content" android:id="@+id/rl_onoff" android:layout_height="wrap_content"> <ImageView android:id="@+id/on_btn" android:layout_width="80dp" android:layout_height="40dp" android:src="@drawable/on_btn" android:visibility="visible"></ImageView> <ImageView android:id="@+id/off_btn" android:layout_width="80dp" android:layout_height="40dp" android:src="@drawable/off_btn" android:visibility="invisible"></ImageView> </RelativeLayout>
// en su actividad llame a esto
ImageView mNotification_on_btn=(ImageView)findViewById(R.id.on_btn); ImageView mNotification_off_btn=(ImageView)findViewById(R.id.off_btn); mNotification_on_btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { mNotification_on_btn.setVisibility(View.GONE); mNotification_off_btn.setVisibility(View.VISIBLE); } }); mNotification_off_btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { mNotification_off_btn.setVisibility(View.GONE); mNotification_on_btn.setVisibility(View.VISIBLE); } });
// esto cambiará como el estilo del iphone apagado el botón de la palanca
Bueno, parece que el componente Switch es la mejor solución si su objetivo SDK es superior a 4,0 (Ice Cream Sandwich). Así que para los demás que se enfrentan al mismo problema mirarlo. 🙂
Puede conseguir esto mediante la casilla de verificación o ToggleButton. A continuación se muestra un ejemplo
Archivo xml
<CheckBox android:id="@+id/check_on_of" android:layout_width="wrap_content" android:layout_height="wrap_content" android:button="@drawable/chec_box_on_off" />
El archivo chec_box_on_off es
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/check_box_on" android:state_checked="true"/> <item android:drawable="@drawable/check_box_off" android:state_checked="false"/> </selector>
Usted conseguirá como encendido apagado el botón y también usted puede comprobar si la caja está encendido o apagado.
El código java es
CheckBox check = (CheckBox)findViewById(R.id.check_on_of); check.isChecked();
Del mismo modo, también puede lograr esto utilizando ToggleButton.