Android: controllo ToggleButton

Un ToggleButton visualizza gli stati selezionati / deselezionati come un pulsante. È fondamentalmente un pulsante di accensione / spegnimento con un indicatore luminoso.

Interruttore

Attributi ToggleButton

Di seguito sono riportati gli attributi importanti relativi al controllo ToggleButton. Puoi controllare la documentazione ufficiale di Android per un elenco completo di attributi e metodi correlati che puoi utilizzare per modificare questi attributi in fase di esecuzione.

Sr.No. Attributo e descrizione
1

android:disabledAlpha

Questo è l'alfa da applicare all'indicatore quando è disabilitato.

2

android:textOff

Questo è il testo per il pulsante quando non è selezionato.

3

android:textOn

Questo è il testo per il pulsante quando è selezionato.

Ereditato da android.widget.TextView Classe -

Sr.No. Attributo e descrizione
1

android:autoText

Se impostato, specifica che questo TextView ha un metodo di input testuale e corregge automaticamente alcuni errori di ortografia comuni.

2

android:drawableBottom

Questo è il disegno da disegnare sotto il testo.

3

android:drawableRight

Questo è il disegno da disegnare a destra del testo.

4

android:editable

Se impostato, specifica che questo TextView ha un metodo di input.

5

android:text

Questo è il testo da visualizzare.

Ereditato da android.view.View Classe -

Sr.No. Attributo e descrizione
1

android:background

Questo è un disegnabile da usare come sfondo.

2

android:contentDescription

Definisce il testo che descrive brevemente il contenuto della vista.

3

android:id

Fornisce un nome identificativo per questa vista,

4

android:onClick

Questo è il nome del metodo nel contesto di questa vista da richiamare quando si fa clic sulla vista.

5

android:visibility

Controlla la visibilità iniziale della vista.

Esempio

Questo esempio ti guiderà attraverso semplici passaggi per mostrare come creare la tua applicazione Android utilizzando Linear Layout e ToggleButton.

Passo Descrizione
1 Utilizzerai l'IDE di Android Studio per creare un'applicazione Android e denominarla come My Application in un pacchetto com.example.saira_000.myapplication come spiegato nel capitolo Hello World Example .
2 Modificare il file src / MainActivity.java per aggiungere un evento clic.
2 Modifica il contenuto predefinito del file res / layout / activity_main.xml per includere il controllo dell'interfaccia utente Android.
3 Non è necessario dichiarare le costanti predefinite, Android Studio si occupa delle costanti predefinite in string.xml
4 Esegui l'applicazione per avviare l'emulatore Android e verifica il risultato delle modifiche apportate nell'applicazione.

Di seguito è riportato il contenuto del file di attività principale modificato src/MainActivity.java. Questo file può includere ciascuno dei metodi fondamentali del ciclo di vita.

Nell'esempio sotto abc indica l'immagine di 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();
         }
      });
   }
}

Di seguito sarà il contenuto di res/layout/activity_main.xml file -

<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>

Di seguito sarà il contenuto di res/values/strings.xml per definire queste nuove costanti -

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

Di seguito è riportato il contenuto predefinito di 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>

Proviamo a eseguire il tuo My Applicationapplicazione. Presumo che tu abbia creato il tuoAVDdurante l'impostazione dell'ambiente. Per eseguire l'app da Android Studio, apri uno dei file di attività del tuo progetto e fai clic sull'icona Esegui dalla barra degli strumenti. Android Studio installa l'app sul tuo AVD e la avvia e se tutto va bene con la configurazione e l'applicazione, verrà visualizzata la seguente finestra dell'emulatore:

Apparirà la seguente schermata:

Se hai cliccato prima su Button, riceverai un messaggio su Toast come You have clicked first ON Button-:) oppure se hai fatto clic sul secondo pulsante, riceverai un messaggio su Toast come You have clicked Second ON Button -:)

Esercizio

Consiglierò di provare l'esempio sopra con diversi attributi di ToggleButton nel file XML di layout e al momento della programmazione per avere un aspetto diverso del ToggleButton. Prova a renderlo modificabile, cambia il colore del carattere, la famiglia del carattere, la larghezza, la dimensione del testo ecc. Puoi anche provare l'esempio precedente con più controlli ToggleButton in un'unica attività.