如何遍历所有动态创建的单选按钮以及如何识别它们?

时间:2011-12-31 01:54:20

标签: android

我有一个从json数据动态添加radiobuttons的应用程序。我真的不知道如何找出哪些被选中。有radioButton.isSelected()radioGroup.getCheckedRadioButtonId(),但由于它是动态创建的,我不能为所有对象使用名称。

有没有办法在创建时将它们添加到一个组中,然后再循环遍历所有这些组?我有多个无线电组,而不是全部,但大多数应该被检查。

我正在使用api lvl 7(2.1)而且我对此很新。请详细解释。

1 个答案:

答案 0 :(得分:1)

您可以使用ArrayList。

ArrayList<RadioButton> radioButtons = new ArrayList<RadioButton>();
//create your new button and add it here.
radioButtons.add(radioButton); 

然后,如果需要检索每个按钮,则遍历列表,使用for循环:

for (int i=0;i<radioButtons.size();i++){
    RadioButton button = radioButtons.get(i);
    //do what you need with the button
}

如果您需要每个RadioButton都有某些数据,那么您可以这样做:

radioButton.setTag("tag");

然后当您循环遍历循环时,可以执行button.getTag();

或者,如果您只想获得所选的一个:

RadioButton button = (RadioButton)findViewById(radioGroup.getCheckedRadioButtonId());

我想我已经涵盖了你的问题以及更多内容。如果我遗漏了任何内容或需要提供任何其他解释,请告诉我。