2012-06-15 19 views
5

Vorrei fare una struttura con la condizione (if-else) RadioButtonCome verificare se "Radiobutton" è spuntato?

voglio che quando si seleziona il Radiobutton RB1, questa funzione è attiva:

regAuxiliar = ultimoRegistro; 

E quando il pulsante radio è selezionato RB2, questa funzione è attiva:

regAuxiliar = objRegistro; 

E dispiace per il mio inglese, io sono brasiliano.

+2

Si prega di fare riferimento alla documentazione API di widget di Radio tasto (http://developer.android.com/reference /android/widget/RadioButton.html) – Saurabh

risposta

0

radiobuttonObj.isChecked() vi darà booleano

funzione
if(radiobuttonObj1.isChecked()){ 
//do what you want 
}else if(radiobuttonObj2.isChecked()){ 
//do what you want 
} 
+0

Non funziona nemmeno. – IMustBeSomeone

1

radioButton.isChecked() restituisce true se il tasto Radion è scelto, false altrimenti.

Source

19

Proprio come si farebbe con un CheckBox

RadioButton rb; 

rb = (RadioButton) findViewById(R.id.rb); 

rb.isChecked(); 
+0

Non è necessario alcun casting – IMustBeSomeone

6

È inoltre possibile mantenere un valore di flag in base a chi ascolta,

radioButton.setOnCheckedChangeListener(new OnCheckedChangeListener() { 

      public void onCheckedChanged(CompoundButton arg0, boolean arg1) { 

       //handle the boolean flag here. 
        if(arg1==true) 
         //Do something 

       else 
        //do something else 

      } 
     }); 

O semplicemente isChecked() può essere utilizzato anche per controllare lo stato del tuo RadioButton.

Ecco un link ad un campione,

http://www.mkyong.com/android/android-radio-buttons-example/

E poi in base alla bandiera è possibile eseguire la funzione.

+0

Non c'è bisogno di complicazioni, ma l'utilizzo del metodo potrebbe rivelarsi utile se faccio qualcosa di complesso. – IMustBeSomeone

11
 if(jRadioButton1.isSelected()){ 
      jTextField1.setText("Welcome"); 
     } 
     else if(jRadioButton2.isSelected()){ 
      jTextField1.setText("Hello"); 
     } 
0

È possibile utilizzare l'interruttore come questo:

layout XML

<RadioGroup 
      android:id="@+id/RG" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content"> 

      <RadioButton 
       android:id="@+id/R1" 
       android:layout_width="wrap_contnet" 
       android:layout_height="wrap_content" 
       android:text="R1" /> 

      <RadioButton 
       android:id="@+id/R2" 
       android:layout_width="wrap_contnet" 
       android:layout_height="wrap_content" 
       android:text="R2" /> 
</RadioGroup> 

e Java Attività

switch (RG.getCheckedRadioButtonId()) { 
     case R.id.R1: 
      regAuxiliar = ultimoRegistro; 
     case R.id.R2: 
      regAuxiliar = objRegistro; 
     default: 
      regAuxiliar = null; // none selected 
    } 

Sarà inoltre necessario implementare una funzione onClick con pulsante o setOnCheckedChangeListener funzione per ottenere la funzionalità richiesta.

1

Se è necessario per l'espresso testare le soluzioni è come questo:

onView(withId(id)).check(matches(isChecked())); 

Bye,