CandraLab

IT Pro & Developer Resource

Menu Close

Tutorial ToggleButton Android

Artikel ini merupakan kelanjutan dari artikel sebelumnya yang membahas tentang ImagButton. Tutorial sederhana ini menunjukan cara bagaimana menggunakan ToggleButton di android termasuk teknik mengganti kata On/Off menjadi gambar.

Program yang akan dibuat adalah program sederhana untuk menampilkan text sesuai dengan bendera ditombol. Jika tombol bendera indonesia di klik maka teks berubah menjadi bahasa indonesia dan bendera berubah menjadi bendera inggris. Tampilan program seperti dibawah ini

togglebutton

Kode XML

<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"
   <span id="more-3286"></span> android:background=&quot;#B8CAEE&quot;
    tools:context=&quot;.DoaDetailActivity&quot; &gt;

    &lt;TextView
        android:id=&quot;@+id/textPesan&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_alignParentTop=&quot;true&quot;
        android:layout_marginTop=&quot;58dp&quot;
        android:text=&quot;Selamat Belajar Android&quot;
        android:textAppearance=&quot;?android:attr/textAppearanceLarge&quot; /&gt;

    &lt;ToggleButton
        android:id=&quot;@+id/btnLangTogle&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_alignParentBottom=&quot;true&quot;
        android:layout_alignParentLeft=&quot;true&quot;
        android:layout_marginBottom=&quot;122dp&quot;
        android:layout_marginLeft=&quot;100dp&quot;
        android:textOn=&quot;&quot;
        android:textOff=&quot;&quot;
        android:background=&quot;@drawable/check_toggle&quot;
        android:src=&quot;@drawable/ic_launcher&quot; /&gt;

&lt;/RelativeLayout&gt;

Perhatikan baris android:background="@drawable/check_toggle". Kita harus membuat file check_toggle.xml yang diletakan di folder Drawable

check_toggle.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- When selected, use grey -->
    <item android:drawable="@drawable/indonesianflag"
          android:state_checked="true" />
    
    <!-- When not selected, use white-->
    <item android:drawable="@drawable/englishflag1"
        android:state_checked="false"/>

 </selector>

Inti kode diatas, jika state tombol On (check) maka backgroundnya adalah gambar bendera indonesia, sedangkan jika state tombol Off, maka backgroundnya adalah bendera Inggris.

Kode ToggleButton

package com.candra.demobutton2;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.TextView;
import android.widget.ToggleButton;

public class ToggleButtonActivity extends Activity {

	TextView txtpesan;
	ToggleButton btnLang;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);

		setContentView(R.layout.activity_toggle);

		txtpesan = (TextView) findViewById(R.id.textPesan);

		btnLang = (ToggleButton) findViewById(R.id.btnLangTogle);

		btnLang.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				if (btnLang.isChecked()) {
					txtpesan.setText("Happy Coding  Android");

				} else {

				
					txtpesan.setText("Selamat belajar Android");
				}
			}
		});

	}

}

Download

Download source code di sini