チェックボックスをクリックしてチェック状態を変更するとCheckedChangeイベントを発生するので, このCheckedChangeイベントを処理するイベントリスナを設定する.
- findViewByIdメソッドで, 指定したリソースインデックスのIDに対応したチェックボックスのインスタンスを取得する.
- CompoundButton.OnCheckedChangeListenerインタフェースを実装したオブジェクトをイベントリスナとして設定する.
- onCheckedChangedメソッドにチェック状態が変更されたときの処理を記述する.
package com.moonlight_aska.android.checkbox01;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.CheckBox;
import android.widget.CompoundButton;
public class CheckBox01 extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final CheckBox chkbox = (CheckBox)findViewById(R.id.checkbox_id);
chkbox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
// チェック状態が変更された時のハンドラ
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
// チェック状態が変更された時の処理を記述
if(chkbox.isChecked() == true) {
Log.v("OnCheckedChanged", "Check true");
}
else {
Log.v("OnCheckedChanged", "Check false");
}
}
});
}
}