Android - controle ToggleButton

Um ToggleButton exibe estados marcados / desmarcados como um botão. É basicamente um botão liga / desliga com um indicador luminoso.

Botão Alternar

Atributos de ToggleButton

A seguir estão os atributos importantes relacionados ao controle ToggleButton. Você pode verificar a documentação oficial do Android para uma lista completa de atributos e métodos relacionados que você pode usar para alterar esses atributos em tempo de execução.

Sr. Não. Atributo e descrição
1

android:disabledAlpha

Este é o alfa a ser aplicado ao indicador quando desabilitado.

2

android:textOff

Este é o texto do botão quando não está marcado.

3

android:textOn

Este é o texto do botão quando está marcado.

Herdado de android.widget.TextView Classe -

Sr. Não. Atributo e descrição
1

android:autoText

Se definido, especifica que este TextView tem um método de entrada textual e corrige automaticamente alguns erros comuns de ortografia.

2

android:drawableBottom

Este é o drawable a ser desenhado abaixo do texto.

3

android:drawableRight

Este é o drawable a ser desenhado à direita do texto.

4

android:editable

Se definido, especifica que este TextView tem um método de entrada.

5

android:text

Este é o texto a ser exibido.

Herdado de android.view.View Classe -

Sr. Não. Atributo e descrição
1

android:background

Este é um drawable para usar como plano de fundo.

2

android:contentDescription

Isso define o texto que descreve brevemente o conteúdo da visualização.

3

android:id

Isso fornece um nome de identificador para esta visão,

4

android:onClick

Este é o nome do método no contexto desta visão para invocar quando a visão é clicada.

5

android:visibility

Isso controla a visibilidade inicial da vista.

Exemplo

Este exemplo o levará por etapas simples para mostrar como criar seu próprio aplicativo Android usando Layout Linear e ToggleButton.

Degrau Descrição
1 Você usará o Android Studio IDE para criar um aplicativo Android e nomeá-lo como Meu aplicativo em um pacote com.example.saira_000.myapplication, conforme explicado no capítulo Exemplo Hello World .
2 Modifique o arquivo src / MainActivity.java para adicionar um evento de clique.
2 Modifique o conteúdo padrão do arquivo res / layout / activity_main.xml para incluir o controle de IU do Android.
3 Não há necessidade de declarar constantes padrão. O Android Studio cuida das constantes padrão em string.xml
4 Execute o aplicativo para iniciar o emulador Android e verifique o resultado das alterações feitas no aplicativo.

A seguir está o conteúdo do arquivo de atividade principal modificado src/MainActivity.java. Este arquivo pode incluir cada um dos métodos fundamentais do ciclo de vida.

No exemplo a seguir, abc indica a imagem do 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 seguir estará o conteúdo de res/layout/activity_main.xml arquivo -

<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 seguir estará o conteúdo de res/values/strings.xml para definir essas novas constantes -

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

A seguir está o conteúdo padrão 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>

Vamos tentar executar o seu My Applicationinscrição. Suponho que você tenha criado o seuAVDao fazer a configuração do ambiente. Para executar o aplicativo do Android Studio, abra um dos arquivos de atividade do seu projeto e clique no ícone Executar na barra de ferramentas. O Android Studio instala o aplicativo em seu AVD e o inicia e se tudo estiver bem com sua configuração e aplicativo, ele será exibido a seguir a janela do emulador -

A seguinte tela irá aparecer -

Se você tiver clicado primeiro no botão, receberá uma mensagem no brinde como You have clicked first ON Button-:) ou então, se você clicar no segundo botão, receberá uma mensagem no Toast como You have clicked Second ON Button -:)

Exercício

Recomendarei tentar o exemplo acima com diferentes atributos de ToggleButton no arquivo XML de layout, bem como em tempo de programação para ter uma aparência diferente do ToggleButton. Tente torná-lo editável, mude para a cor da fonte, família da fonte, largura, tamanho do texto etc e veja o resultado. Você também pode tentar o exemplo acima com vários controles ToggleButton em uma atividade.