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 RadioButton
s, 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 RadioButton
oggetti 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 RadioButton
oggetto 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.