Cara Membuat RadioButton Android di Eclipse

Pada bab ini, kita akan membuat aplikasi sederhana menggunakan RadioButton. Skenarionya ada 5 buah RadioButton masing-masing diberi teks  Horizontal, Vertical, Kanan, Tengah, dan Kiri. Jika salah satu RadioButton dipilih, maka susunan RadioButton akan berubah sesuai pilihannya.

Gambar 6.5. (a) Kombinasi tampilan secara vertivcal dengan rata kanan (b) kombinasi tampilan horizontal dengan center
Gambar 6.5. (a) Kombinasi tampilan secara vertivcal dengan rata kanan (b) kombinasi tampilan horizontal dengan center
Penasaran? Yuk, kita latihan..

1. Jalankan Enclipse, buat Project baru (gambar 6.3)
Gambar 6. 6
Gambar 6. 6

2. Isilah parameter seperti berikut
Project name
RadioButton
Build Target
Android 2.2
Application name
Menampilkan Radio Button
Package name
contoh.RadioButton
Create Activity
RadioButton
Min SDK version
8

3. Kemudian ketikkan kode berikut ini pada main.xml (Gambar 6.4)
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:orientation="vertical">
<RadioGroup android:padding="5px"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/orientation"
android:orientation="horizontal">
<RadioButton android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/horizontal"
android:text="Horizontal">
</RadioButton>
<RadioButton android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/vertical"
android:text="Vertical">
</RadioButton>
</RadioGroup>
<RadioGroup android:id="@+id/gravity"
android:orientation="vertical"
android:padding="5px"
android:layout_width="fill parent"
android:layout_height="wrap content">
<RadioButton
android:id="@+id/kanan"
android:text="Kanan">
</RadioButton>
<RadioButton
android:id="@+id/kiri"
android:text="Kiri">
</RadioButton>
<RadioButton
android:id="@+id/tengah"
android:text="Tengah">
</RadioButton>
</RadioGroup>
</LinearLayout>

Gambar 6. 1. Letak layout main.xml dalam package
Gambar 6. 1. Letak layout main.xml dalam package

4. Ketiklah kode RadioButton.java seperti berikut (Gambar 6.5)
package contoh.radioButton;

import android.app.Activity;
import android.os.Bundle;
import android.view.Gravity;
import android.widget.LinearLayout;
import android.widget.RadioGroup;

public class radioButton extends Activity implements
RadioGroup.OnCheckedChangeListener {
/** Called when the activity is first created. */

RadioGroup orientation;
RadioGroup gravity;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

orientation = (RadioGroup) findViewById(R.id.orientation);
orientation.setOnCheckedChangeListener(this);
gravity = (RadioGroup) findViewById(R.id.gravity);
gravity.setOnCheckedChangeListener(this);

}

public void onCheckedChanged(RadioGroup group,
int checkId) {
switch (checkId) {
case R.id.horizontal:
orientation.setOrientation(LinearLayout.HORIZONTAL);
break;
case R.id.vertical:
orientation.setOrientation(LinearLayout.VERTICAL);
break;
case R.id.kiri:
gravity.setGravity(Gravity.LEFT);
break;
case R.id.tengah:
gravity.setGravity(Gravity.CENTER);
break;
case R.id.kanan:
gravity.setGravity(Gravity.RIGHT);
break;
}
}
}

Gambar 6. 2. Activity radioButton.java dalam package
Gambar 6. 2. Activity radioButton.java dalam package

5. Bila kode berantakan, lakukan Format (source > format).
6. Lakukan RUN dan lihat hasilnya. Yah! Sangat mudah.

Penjelasan Program

Kita mulai dari layout main.xml. RadioGroup berbeda dengan RadioButton. RadioGroup adalah kumpulan beberapa RadioButton. Dalam layout ini, kita mempunyai 2 buah RadioGroup
  1. Baris 7-22  : RadioGroup pertama dengan id "orientation".   Memiliki 2 radioButton masing-masing ber-id  "Horizontal" dan "vertical". 
  2. Baris 23-40: RadioGroup kedua dengan id "gravity. Mempunyai 3 radioButton masing-masing ber-id "left","center","right".

Sekarang kita pindah ke activity radioButton. Activity ini mengimplementasikan class RadioGroup.OnCheckedChangeListener, agar supaya sistem dapat mengetahui bahwa ada radioButton yang diklik. Untuk memudahkan pemahaman, saya bagi menjadi 3 bagian
  1. Baris 13-14 :Deklarasi object RadioGroup dan RadioButton 
  2. Baris 21-24 :Sinkronisasi object yang sudah  di deklarasikan terhadap  widget pada main.xml, sekaligus mengaktifkan radioButton  agar berfungsi saat diklik. 
  3. Baris 28-47 :fungsi yang akan dieksekusi jika salah   satu radioButton diklik

Selain melalui xml, ada cara lain untuk menentukan orientasi sebuah layout, yakni melalui method setOrientation()  seperti pada  Baris 32 dan 35. Begitu juga dengan gravity sebuah object, bisa juga diatur dari java melalui method setGravity().

Sumber: omayib.com

Posting Komentar

Lebih baru Lebih lama

نموذج الاتصال