2016-04-10 7 views
0

レイアウトの目的で、私は各グループに複数の選択肢を持つ3つの放射線グループを持っています。どのように3つのグループ全体で1つの選択肢しか許されないようにコードすることができますか?許可された選択肢が1つだけの複数のラジオグループ?

つまり、今では、各グループで合計3つの選択を行うことができます。私はこれらをお互いに見て、一つの選択肢だけを許してほしい。ここで

答えて

0

は方法です:

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); 
関連する問題