11 Mar

Deteksi Click pada Radio Button Android

Dear JavaClopedia Developers,

Tutorial baru lagi nih, mumpung super semangat. Berikut akan saya bahas mengenai cara mendeteksi event Click pada Radio Button yang telah kita masukkan ke dalam desain Layout XML. Ada 2 cara memberikan deteksi event Click pada Radion Button. Kita mulai yang pertama.

1. Ditentukan melalui Layout XML

cara yang pertama, kita dapat menentukan method yang akan dipanggil ketika Radio Button tersebut di click. perhatikan potongan kode program pada XML Layout berikut ini:

RadioButton
        android:id="@+id/radio_right1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/rad_option1"
        android:checked="true"
        android:textColor="#f00"
        android:onClick="onRadioButtonClick"
/>

perhatikan kode program android:onClick=”onRadionButtonClick” artinya adalah kita tentukan apabila nanti RadioButton di klik, maka panggilan method onRadionButtonClick(). Kira-kira begitu logika gampangnya. selanjutnya berarti di dalam Activity, kita harus tambahkan method tersebut seperti berikut ini:

public void onRadioButtonClick(View v) {
    RadioButton button = (RadioButton) v;
    Toast.makeText(SimpleRadioButtonActivity.this,
        button.getText() + " was chosen.",
        Toast.LENGTH_SHORT).show();
}

2. Diset di dalam kode program (programatically)

cara yang kedua, adalah dengan menggunakan kode program secara langsung. Perhatikan potongan kode program berikut ini:

RadioGroup radio = (RadioGroup) findViewById(R.id.radio_right1);
OnClickListener radio_listener = new OnClickListener() {
    public void onClick(View v) {
        onRadioButtonClick(v);
    }
};

Perhatikan bahwa di dalam kode program di atas, kita override method public void onClick() kemudian di dalamnya kita isi dengan kode program yang akan dijalankan ketika Radio Button tersebut di click oleh user.

Selamat Mencoba!

Best Regards,

Andi Taru – JavaClopedia

Leave a Reply

Your email address will not be published. Required fields are marked *