1. ホーム
  2. アンドロイド

Android|RadioGroup-デフォルトのチェックを設定する

2022-02-28 16:33:32
<パス

RadioGroupでは、RadioButtonのidで、選択されているかどうかを制御します。

###1.レイアウトファイルの中のコントロール。
xmlレイアウトファイルでRadioButtonをデフォルトで選択するように制御する必要がある場合、それにidを設定する必要があります。idを設定しない場合、RadioButtonが常に選択されることになります。そのコードは以下の通りです。


2. コードコントロール

RadioGroupにRadioButtonを動的に追加することはよくありますが、RadioButtonのデフォルトチェックを設定したい場合、getId( )でradioButton idを取得し、設定する必要があります。また、idでビューを取得して設定する方法と、radiogroup.check( id ) を使って直接設定する方法があります。詳細は以下の通りです。

        RadioGroup radioGroup = (RadioGroup) findViewById(R.id.rg_cus);

        for (int i = 0; i < 12; i++) {
            RadioButton radioButton = new RadioButton(getContext());
            radioButton.setButtonDrawable(null);
            radioButton.setBackgroundResource(R.drawable.selector_bk_rb);
            radioButton.setText("Button" + i);
            radioButton.setPadding(15, 15, 15, 15);
            radioButton.setTextSize(20);
            radioGroup.addView(radioButton);

            if (i == 0) {
                // // Set the default selection method 1, get the control first, then set the selection               
                // // Get the radioButton control based on its id
                // RadioButton rb_checked = (RadioButton) radioGroup.findViewById(radioButton.getId());
                // // set default checked
                // rb_checked.setChecked(true);

                // set the default checked method 2                
                radioGroup.check(radioButton.getId());
            }
        }