Android - Control de botón de palanca

Un ToggleButton muestra los estados marcados / no marcados como un botón. Básicamente es un botón de encendido / apagado con un indicador de luz.

Botón de activación

Atributos de ToggleButton

A continuación se muestran los atributos importantes relacionados con el control ToggleButton. Puede consultar la documentación oficial de Android para obtener una lista completa de atributos y métodos relacionados que puede usar para cambiar estos atributos en tiempo de ejecución.

No Señor. Atributo y descripción
1

android:disabledAlpha

Este es el alfa que se aplica al indicador cuando está desactivado.

2

android:textOff

Este es el texto del botón cuando no está marcado.

3

android:textOn

Este es el texto del botón cuando está marcado.

Heredado de android.widget.TextView Clase -

No Señor. Atributo y descripción
1

android:autoText

Si se establece, especifica que este TextView tiene un método de entrada textual y corrige automáticamente algunos errores ortográficos comunes.

2

android:drawableBottom

Este es el dibujable que se dibujará debajo del texto.

3

android:drawableRight

Este es el dibujable que se dibujará a la derecha del texto.

4

android:editable

Si se establece, especifica que este TextView tiene un método de entrada.

5

android:text

Este es el texto que se mostrará.

Heredado de android.view.View Clase -

No Señor. Atributo y descripción
1

android:background

Este es un dibujo para usar como fondo.

2

android:contentDescription

Esto define el texto que describe brevemente el contenido de la vista.

3

android:id

Esto proporciona un nombre de identificador para esta vista,

4

android:onClick

Este es el nombre del método en el contexto de esta vista para invocar cuando se hace clic en la vista.

5

android:visibility

Esto controla la visibilidad inicial de la vista.

Ejemplo

Este ejemplo lo llevará a través de pasos simples para mostrar cómo crear su propia aplicación de Android usando Linear Layout y ToggleButton.

Paso Descripción
1 Utilizará Android Studio IDE para crear una aplicación de Android y nombrarla como Mi aplicación en un paquete com.example.saira_000.myapplication como se explica en el capítulo Ejemplo de Hello World .
2 Modifique el archivo src / MainActivity.java para agregar un evento de clic.
2 Modifique el contenido predeterminado del archivo res / layout / activity_main.xml para incluir el control de la interfaz de usuario de Android.
3 No es necesario declarar constantes predeterminadas, Android Studio se encarga de las constantes predeterminadas en string.xml
4 Ejecute la aplicación para iniciar el emulador de Android y verifique el resultado de los cambios realizados en la aplicación.

A continuación se muestra el contenido del archivo de actividad principal modificado src/MainActivity.java. Este archivo puede incluir cada uno de los métodos fundamentales del ciclo de vida.

En el siguiente ejemplo, abc indica la imagen de tutorialspoint
package com.example.saira_000.myapplication;

import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import android.widget.ToggleButton;

public class MainActivity extends ActionBarActivity {
   ToggleButton tg1,tg2;
   Button b1;
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      
      tg1=(ToggleButton)findViewById(R.id.toggleButton);
      tg2=(ToggleButton)findViewById(R.id.toggleButton2);
      
      b1=(Button)findViewById(R.id.button2);
      b1.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            StringBuffer result = new StringBuffer();
            result.append("You have clicked first ON Button-:) ").append(tg1.getText());
            result.append("You have clicked Second ON Button -:) ").append(tg2.getText());
            Toast.makeText(MainActivity.this, result.toString(),Toast.LENGTH_SHORT).show();
         }
      });
   }
}

A continuación se mostrará el contenido de res/layout/activity_main.xml archivo -

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:paddingBottom="@dimen/activity_vertical_margin"
   android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   tools:context=".MainActivity">
   
   <TextView
      android:id="@+id/textView2"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Tutorials point"
      android:textColor="#ff87ff09"
      android:textSize="30dp"
      android:layout_above="@+id/imageButton"
      android:layout_centerHorizontal="true"
      android:layout_marginBottom="40dp" />
      
   <ImageButton
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/imageButton"
      android:src="@drawable/abc"
      android:layout_centerVertical="true"
      android:layout_centerHorizontal="true" />
      
   <ToggleButton
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="On"
      android:id="@+id/toggleButton"
      android:checked="true"
      android:layout_below="@+id/imageButton"
      android:layout_toEndOf="@+id/button2/>
      
   <ToggleButton
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Off"
      android:id="@+id/toggleButton2"
      android:checked="true"
      android:layout_alignTop="@+id/toggleButton" />
      
   <Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/button2"
      android:text="ClickMe"
      android:layout_alignParentBottom="true"
      android:layout_centerHorizontal="true" />
      
</RelativeLayout>

A continuación se mostrará el contenido de res/values/strings.xml para definir estas nuevas constantes -

<?xml version="1.0" encoding="utf-8"?>
<resources>
   <string name="app_name">My Application</string>
</resources>

A continuación se muestra el contenido predeterminado de AndroidManifest.xml -

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.saira_000.myapplication" >
   
   <application
      android:allowBackup="true"
      android:icon="@drawable/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
      
      <activity
         android:name="com.example.My Application.MainActivity"
         android:label="@string/app_name" >
      
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
      
      </activity>
      
   </application>
</manifest>

Intentemos ejecutar tu My Applicationsolicitud. Supongo que habías creado tuAVDmientras realiza la configuración del entorno. Para ejecutar la aplicación desde Android Studio, abra uno de los archivos de actividad de su proyecto y haga clic en el icono Ejecutar de la barra de herramientas. Android Studio instala la aplicación en su AVD y la inicia y, si todo está bien con su configuración y aplicación, se mostrará la siguiente ventana del emulador:

Aparecerá la siguiente pantalla:

Si ha hecho clic primero en el botón, recibirá un mensaje en Toast como You have clicked first ON Button-:) o si hace clic en el segundo botón, recibirá un mensaje en Toast como You have clicked Second ON Button -:)

Ejercicio

Recomendaré probar el ejemplo anterior con diferentes atributos de ToggleButton en el archivo XML de diseño, así como en el momento de la programación para tener un aspecto diferente del ToggleButton. Intente hacerlo editable, cambie el color de la fuente, la familia de la fuente, el ancho, el tamaño del texto, etc. y vea el resultado. También puede probar el ejemplo anterior con múltiples controles ToggleButton en una actividad.