Domanda

Voglio ottenere questo: controllare l'utente su una casella di controllo Deselezionata, un pane tostato visualizzato, la casella di controllo diventa disabilita ..

male.setOnCheckedChangeListener(new OnCheckedChangeListener(){

    @Override
    public void onCheckedChanged(CompoundButton arg0, boolean isChecked) {
   // TODO Auto-generated method stub
   if (isChecked){
    Toast.makeText(CheckBoxTuts.this, "male" , Toast.LENGTH_SHORT).show();
    male.setChecked(false);

   }
    }

       });
.

L'uscita non è riuscita, poiché vengono eseguiti allo stesso tempo, anche io metto il maschio. Cometchecked (falso) all'esterno .. Non riesco a ricordare che c'è qualcosa da gestire qualcosa del 1 °, allora un'altra cosa ..davvero non posso ricordare

È stato utile?

Soluzione

Se si desidera ottenere: "Controllo dell'utente su una casella di controllo Deselezionata, un pane tostato visualizzato, la casella di controllo diventa disabilita ..", dovresti provare questo codice:

male.setOnCheckedChangeListener(new OnCheckedChangeListener(){

    @Override
    public void onCheckedChanged(CompoundButton arg0, boolean isChecked) {                   
      if (isChecked){
          Toast.makeText(CheckBoxTuts.this, "male" , Toast.LENGTH_SHORT).show();
          male.setEnabled(false); // disable checkbox 
      }
    }    
});
.

Altri suggerimenti

Prova questo ....

- Utilizzare il setEnabled(false) sul CheckBox

male.setOnCheckedChangeListener(new OnCheckedChangeListener(){

    @Override
    public void onCheckedChanged(CompoundButton arg0, boolean isChecked) {                   
      if (isChecked){

          Toast.makeText(CheckBoxTuts.this, "male" , Toast.LENGTH_SHORT).show();

          male.setEnabled(false);   // Will Disable checkbox 
      }
    }    
});
.

male.setOnCheckedChangeListener(new OnCheckedChangeListener(){

@Override
public void onCheckedChanged(CompoundButton arg0, boolean isChecked) {
  // TODO Auto-generated method stub
   if (isChecked){
   Toast.makeText(CheckBoxTuts.this, "male" , Toast.LENGTH_SHORT).show();
    //male.setVisibility(View.GONE);//disappear your check box
    male.setEnabled(false);//disable your check box
}
}

});
.

Prova a utilizzare .onClickListener(View.OnClickListener) con View.OnClickListener implementato.Nel corpo del metodo implementato, controllerai se la casella di controllo è selezionata o non impostarli.

In primo luogo, registra la casella di controllo su OnCheckeckedChangelistener.

chk.setOnCheckedChangeListener(this);
.

Quindi, sostituisce il suo metodo

 @Override
    public void onCheckedChanged(CompoundButton compoundButton, boolean b)
    {
        if (chk.isChecked())
        {
           chk.setEnabled(false);
        }
    }
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top