以编程方式生成动态 RadioGroup 并对其进行 setOnCheckedChangeListener
Generate dynamic RadioGroup programatically and setOnCheckedChangeListener on it
我编写了以下用于显示动态单选组和单选按钮的代码。
但是我不明白如何将选中的按钮变成 setOnCheckedChangeListener()
方法。
有时多个 RadioButton 会点击同一个 RadioGroup。
不知道怎么办?
LinearLayout linearLayout = (LinearLayout) findViewById(R.id.ll);
menuSize = 4;
for(i = 0; i < menuSize; i++)
{
int menuId = controller.getMenuid(i));
int subMenuSize = controller.getSubMenu(menuId).size(); // Dynamic value from MVC architechture
TextView textViewHeading = new TextView(getApplicationContext()); // RadioGroup Heading
textViewHeading.setText(controller.getMenuName(i)); // Set RadioGroup Heading
linearLayout.addView(textViewHeading);
RadioGroup radioGroup = new RadioGroup(getApplicationContext());
radioGroup.setId(i);
for(j = 0; j < subMenuSize; j++)
{
RadioButton radioButton = new RadioButton(getApplicationContext());
radioButton.setId(j);
// Get value from HashMap<Integer, ArrayList<SubMenuClass>>
// Value is used for RadioButton
radioButton.setText( controller.getSubMenu(menuId).get(j).getSubMenuName());
radioGroup.addView(radioButton);
}
radioGroup.setOnCheckedChangeListener(TryRadioButtons.this);
linearLayout.addView(radioGroup);
}
我想检查 ButtonSubmit Click 是否每个 RadioGroup 都有一个 RadioButton 必须检查。
那么如何在 ButtonSubmit ClickEvent 中获取 RadioButton?
提前致谢
这样做,
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);
Refer this..
可能会帮助您动态获取单选按钮
我编写了以下用于显示动态单选组和单选按钮的代码。
但是我不明白如何将选中的按钮变成 setOnCheckedChangeListener()
方法。
有时多个 RadioButton 会点击同一个 RadioGroup。
不知道怎么办?
LinearLayout linearLayout = (LinearLayout) findViewById(R.id.ll);
menuSize = 4;
for(i = 0; i < menuSize; i++)
{
int menuId = controller.getMenuid(i));
int subMenuSize = controller.getSubMenu(menuId).size(); // Dynamic value from MVC architechture
TextView textViewHeading = new TextView(getApplicationContext()); // RadioGroup Heading
textViewHeading.setText(controller.getMenuName(i)); // Set RadioGroup Heading
linearLayout.addView(textViewHeading);
RadioGroup radioGroup = new RadioGroup(getApplicationContext());
radioGroup.setId(i);
for(j = 0; j < subMenuSize; j++)
{
RadioButton radioButton = new RadioButton(getApplicationContext());
radioButton.setId(j);
// Get value from HashMap<Integer, ArrayList<SubMenuClass>>
// Value is used for RadioButton
radioButton.setText( controller.getSubMenu(menuId).get(j).getSubMenuName());
radioGroup.addView(radioButton);
}
radioGroup.setOnCheckedChangeListener(TryRadioButtons.this);
linearLayout.addView(radioGroup);
}
我想检查 ButtonSubmit Click 是否每个 RadioGroup 都有一个 RadioButton 必须检查。 那么如何在 ButtonSubmit ClickEvent 中获取 RadioButton?
提前致谢
这样做,
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);
Refer this..
可能会帮助您动态获取单选按钮