onCreate関数内にRadioButtonリストを含むRadioGroupを作成したいとします。私はxml-layoutを使用したw/oのエクササイズとしてやりたい出来ますか?ありがとう。このようなRadioButtonを内部に持つRadioGroupを動的に作成することはできますか(w/o xml)?
2
A
答えて
4
何か:
....
RadioGroup group = new RadioGroup(this);
group.setOrientation(RadioGroup.HORIZONTAL);
RadioButton btn1 = new RadioButton(this);
btn1.setText("BTN1");
group.addView(btn1);
RadioButton btn2 = new RadioButton(this);
group.addView(btn2);
btn2.setText("BTN2");
....
RadioButton btnN = new RadioButton(this);
group.addView(btnN);
btnN.setText("BTNN");
yourLayout.addView(group);
....
+0
ありがとう!それは素晴らしい。 –
0
これは、仕事をする:
int buttons = 5;
RadioGroup rgp = new RadioGroup(getApplicationContext());
for (int i = 1; i <= buttons; i++) {
RadioButton rbn = new RadioButton(this);
rbn.setId(1 + 1000);
rbn.setText("RadioButton" + i);
//Attach button to RadioGroup.
rgp.addView(rbn);
}
ViewGroup viewGroup = (ViewGroup) ((ViewGroup) this
.findViewById(android.R.id.content)).getChildAt(0);
viewGroup.addView(rgp);
これは完全な例である:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Defining buttons quantity!
int buttons = 5;
//Create a new instance of RadioGroup.
RadioGroup rgp = new RadioGroup(getApplicationContext());
//Create buttons!
for (int i = 1; i <= buttons; i++) {
RadioButton rbn = new RadioButton(this);
rbn.setId(1 + 1000);
rbn.setText("RadioButton" + i);
//Attach button to RadioGroup.
rgp.addView(rbn);
}
//Get the root view.
ViewGroup viewGroup = (ViewGroup) ((ViewGroup) this
.findViewById(android.R.id.content)).getChildAt(0);
viewGroup.addView(rgp);
}
}
そして、これが結果です。
あなたは、XMLレイアウトに定義されたRADIOGROUPを使用し、ボタンがthis answerを見るdinamically追加する必要がある場合。
こんにちはtatiana私はcommetsを含む完全な例を追加しました。 – Jorgesys