2011-12-31 8 views
0

json 데이터에서 라디오 버튼을 동적으로 추가하는 앱이 있습니다. 나는 실제로 어떤 것들이 선택되었는지 알아내는 방법을 모른다. radioButton.isSelected()radioGroup.getCheckedRadioButtonId()이 있지만 동적으로 생성되었으므로 모든 개체에 이름을 사용할 수 없습니다.어떻게 모든 동적으로 생성 된 라디오 버튼을 반복합니까? 어떻게 식별합니까?

생성시 그룹에 추가하고 나중에 모두 순환시키는 방법이 있습니까? 나는 여러 개의 방사능 그룹을 가지고 있지만 전부는 아니지만 대부분 검사를 받아야합니다.

저는 api lvl 7 (2.1)을 사용하고 있습니다. 저는 이것에 상당히 익숙합니다. 자세히 설명해주십시오.

답변

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()); 

나는 당신의 질문과 그 이상에서 모든 것을 다루었다고 생각합니다. 내가 무엇인가 놓친 경우 또는 추가 설명을 드릴 필요가 있으면 알려주십시오.

+0

http://www.devx.com/tips/Tip/13741 (글로벌 변수 작성 방법)이이를 해결했습니다. 고마워! –

관련 문제