Condividi tramite


RadioButton

In questa sezione verranno creati due pulsanti di opzione che si escludono a vicenda (abilitando uno disabilita l'altro), usando RadioGroup E RadioButton Widget. Quando si preme un pulsante di opzione, verrà visualizzato un messaggio di tipo avviso popup.

Aprire il file Resources/layout/Main.axml e aggiungere due RadioButtons, annidati in ( RadioGroup all'interno di LinearLayout):

<RadioGroup
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:orientation="vertical">
  <RadioButton android:id="@+id/radio_red"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Red" />
  <RadioButton android:id="@+id/radio_blue"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Blue" />
</RadioGroup>

È importante che gli RadioButtonoggetti siano raggruppati in base all'elemento RadioGroup in modo che non sia possibile selezionarne più di uno alla volta. Questa logica viene gestita automaticamente dal sistema Android. Quando uno RadioButton all'interno di un gruppo è selezionato, tutti gli altri vengono deselezionati automaticamente.

Per eseguire un'operazione quando ogni RadioButton oggetto è selezionato, è necessario scrivere un gestore eventi:

private void RadioButtonClick (object sender, EventArgs e)
{
    RadioButton rb = (RadioButton)sender;
    Toast.MakeText (this, rb.Text, ToastLength.Short).Show ();
}

In primo luogo, viene eseguito il cast del mittente passato in un controllo RadioButton. Quindi un Toast messaggio visualizza il testo del pulsante di opzione selezionato.

Ora, nella parte inferiore del OnCreate() aggiungere quanto segue:

RadioButton radio_red = FindViewById<RadioButton>(Resource.Id.radio_red);
RadioButton radio_blue = FindViewById<RadioButton>(Resource.Id.radio_blue);

radio_red.Click += RadioButtonClick;
radio_blue.Click += RadioButtonClick;

In questo modo viene acquisito ogni RadioButtonoggetto dal layout e viene aggiunto il gestore eventi appena creato a ognuno di essi.

Eseguire l'applicazione.

Suggerimento

Se è necessario modificare lo stato manualmente ( ad esempio durante il caricamento di un salvato CheckBoxPreference), usare Checked setter della proprietà o MetodoToggle() .

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nellalicenza Creative Commons 2.5 Attribuzione.