J'ai 3 boutons radio et 10 cases à cocher, je souhaite simplement empêcher l'utilisateur de choisir des cases à cocher jusqu'à ce qu'elle choisisse d'abord l'un des boutons radio, aide s'il vous plaît. P>
4 Réponses :
Par défaut Définissez toutes les cases à cocher comme désactivé. Ajoutez ensuite l'écouteur de check Change pour tous les boutons radio. Ajoutez du code pour activer toutes les cases sur le bouton radio Vérifier le changement d'écouteur. P>
Utiliser des méthodes de boutons radio, définissez des cases à cocher désactivées et vérifiez si l'un des radiobutton isselected (), si des cases à cocher définies sont activées. P>
Vous pouvez soit garder un bouton radio comme sélectionné, par défaut, l'utilisateur doit donc accéder à la sélection par défaut ou modifiera la sélection - les deux manières que vous avez toujours un bouton radio sélectionné. P>
Si vous ne voulez pas conserver une sélection de radio par défaut, P>
Utilisez un groupe de radio p>
désactiver toutes les cases à cocher au début p>
Set OnCliquez sur le groupe radio et activez la case à cocher à l'intérieur. P>
radiogroupe radiogroupe = (radiogroupe) FOLEVIEDBYID (r.id.radiogroup); code> p> li>
case à cocher.setéenabled (false); code> p> li>
radiogroup.setonCheckedChangelistener (Nouveau ONCHeckEdChangelistener ()
{
@Passer outre
Public Void Oncheckedchanged (groupe de radiogroupes, int checkeDidd) {
Case à cocher.setenabled (false);
}
}); code> p> li>
ol>
Ajouter Radiobutton Code> Intérieur GROUPE DE RADIO.
public class MainActivity extends AppCompatActivity {
RadioGroup radioGroup;
RadioButton radioButton1,radioButton2,radioButton3;
CheckBox checkBox1,checkBox2,checkBox3,checkBox4,checkBox5,checkBox6;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
radioGroup= (RadioGroup) findViewById(R.id.radio_group);
radioButton1= (RadioButton) findViewById(R.id.button1);
radioButton2= (RadioButton) findViewById(R.id.button2);
radioButton3= (RadioButton) findViewById(R.id.button3);
checkBox1= (CheckBox)findViewById(R.id.check1);
checkBox2= (CheckBox)findViewById(R.id.check2);
checkBox3= (CheckBox)findViewById(R.id.check3);
checkBox4= (CheckBox)findViewById(R.id.check4);
checkBox5= (CheckBox)findViewById(R.id.check5);
checkBox6= (CheckBox)findViewById(R.id.check6);
checkBox1.setEnabled(false);
checkBox2.setEnabled(false);
checkBox3.setEnabled(false);
checkBox4.setEnabled(false);
checkBox5.setEnabled(false);
checkBox6.setEnabled(false);
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
RadioButton checkedRadioButton = (RadioButton)group.findViewById(checkedId);
boolean isChecked = checkedRadioButton.isChecked();
if (isChecked){
checkBox1.setEnabled(true);
checkBox2.setEnabled(true);
checkBox3.setEnabled(true);
checkBox4.setEnabled(true);
checkBox5.setEnabled(true);
checkBox6.setEnabled(true);
}
}
});
}