2016-04-10 8 views
0

Für Layout-Zwecke habe ich drei Radiogruppen mit Mehrfachselektionen in jeder Gruppe. Wie kann ich codieren, so dass nur eine Auswahl in allen drei Gruppen erlaubt ist?mehrere Funkgruppen mit nur einer zulässigen Auswahl?

Mit anderen Worten, im Moment kann ich eine Auswahl in jeder Gruppe für insgesamt 3 Auswahlen treffen. Ich möchte, dass diese sich gegenseitig "sehen" und nur eine Auswahl zulassen.

Antwort

0

Hier ist die Methode:

private RadioButton lastCheckedRB = null; 
//whatever code 

//onClicklistener for radiogroup does not work 
RadioGroup.OnCheckedChangeListener listener = new RadioGroup.OnCheckedChangeListener() { 
     @Override 
     public void onCheckedChanged(RadioGroup group, int checkedId) { 
      RadioButton checked_rb = (RadioButton) group.findViewById(checkedId); 
      //OnCheckedChangeListener checks for reclick of a clicked rb, so the rest of the code is not executed 
      if (lastCheckedRB != null) { 
       lastCheckedRB.setChecked(false); 
      } 
      //store the clicked radiobutton 
      lastCheckedRB = checked_rb; 
     } 
    }; 
radioGroup1.setOnCheckedChangeListener(listener); 
radioGroup2.setOnCheckedChangeListener(listener); 
Verwandte Themen