Androidのラジオグループの使い方について
RadioGroupはどこで使うのか
このページをご覧の皆さんはラジオボタンはご存知でしょうか?
会員情報を入力する画面などで、男性、女性などの複数の選択肢から、
一つの選択肢を選択する場合によく使われるボタンのことです。
ラジオグループは、複数のラジオボタンを縦並び又は
横並びに定義する際に使用するコンポーネントのことです。
XmlにRadioGroup及び、RadioButtonを定義します。
ここで覚えておきたいのが、ラジオボタンを
横並びにするときは、 android:orientation = “horizontal”
縦並びにするときは、 android:orientation =”vertical”
とすることです。
<radiogroup>
android:id="@+id/rdoGroup"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignLeft="@+id/textView1"
android:layout_below="@+id/textView1"
android:orientation="horizontal"
android:background="@drawable/sex_bg" >
android:id="@+id/rdoItem1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:text="@string/sex_man"
android:id="@+id/rdoItem2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/sex_woman"
</radioGroup>
次にJavaコードでRadioGroupの割り当て等を行う
//ラジオグループの割り当て
RadioGroup group = (RadioGroup)getActivity().findViewById(R.id.rdoGroup);
group.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// チェックされた状態の時の処理を記述
RadioButton radio = (RadioButton)getActivity().findViewById(checkedId);
if(radio.isChecked() == true){
if(getActivity().findViewById(checkedId) == getActivity().findViewById(R.id.rdoItem1)){
Log.d("男性が選択されました");
mPrefs.edit().putInt("sex_type", MAN).commit();
}else{
Debug.Log("女性が選択されました");
mPrefs.edit().putInt("sex_type", WOMAN).commit();
}
}
});
以上です
スポンサーリンク