Androidプログラマへの道 〜 Moonlight 明日香 〜 - ラジオボタンのチェック状態を設定, 取得する

ラジオボタンのチェックを設定する

ラジオグループ(複数のラジオボタンをグループ化したもの)内の指定したIDのラジオボタンのチェックを設定する.
    • findViewByIdメソッドで, 指定したリソースインデックスのIDに対応したラジオグループのインスタンスを取得する.
    • checkメソッドで, 指定したIDのラジオボタンのチェックをセットする.
package com.moonlight_aska.android.radiobutton01;

import android.app.Activity;
import android.os.Bundle;
import android.widget.RadioButton;
import android.widget.RadioGroup;

public class RadioButton01 extends Activity {
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    RadioGroup group = (RadioGroup)findViewById(R.id.radiogroup_id);
    group.check(R.id.radiobutton_id02);
  }
}


ラジオボタンのチェック状態を取得する

    • findViewByIdメソッドで, チェック状態が変化したIDに対応したラジオボタンのインスタンスを取得する.
    • isCheckedメソッドで, チェック状態を取得する.
package com.moonlight_aska.android.radiobutton01;

import android.app.Activity;
import android.os.Bundle;
import android.widget.RadioButton;
import android.widget.RadioGroup;

public class RadioButton01 extends Activity {
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    RadioGroup group = (RadioGroup)findViewById(R.id.radiogroup_id);
    group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {

      @Override
      public void onCheckedChanged(RadioGroup group, int checkedId) {
        // TODO Auto-generated method stub
        RadioButton radio = (RadioButton)findViewById(checkedId);
        if(radio.isChecked() == true) {
          // チェックされた状態の時の処理を記述
        }
        else {
          // チェックされていない状態の時の処理を記述
        }
      }
    });
  }
}