Udostępnij za pośrednictwem


RadioButton

W tej sekcji utworzysz dwa wzajemnie wykluczające się przyciski radiowe (włączenie jednego wyłącza drugiego), używając RadioGroup I RadioButton Widżety. Po naciśnięciu dowolnego przycisku radiowego zostanie wyświetlony wyskakowany komunikat.

Otwórz plik Resources/layout/Main.axml i dodaj dwa RadioButtons zagnieżdżone w RadioGroup obiekcie (wewnątrz elementu 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>

Ważne jest, aby RadioButtonte elementy zostały zgrupowane razem przez RadioGroup element, aby jednocześnie nie można było wybrać więcej niż jednego elementu. Ta logika jest automatycznie obsługiwana przez system Android. Kiedy jeden RadioButton w obrębie grupy jest zaznaczona, wszystkie inne zostaną automatycznie anulowane.

Aby zrobić coś po wybraniu każdego RadioButton z nich, musimy napisać procedurę obsługi zdarzeń:

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

Po pierwsze, nadawca, który jest przekazywany, jest rzutowany do RadioButton. Następnie Toast komunikat wyświetla tekst zaznaczonego przycisku radiowego.

Teraz w dolnej części OnCreate() metoda, dodaj następujące elementy:

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;

Spowoduje to przechwycenie każdego z RadioButtonelementów z układu i dodanie nowo utworzonej procedury obsługi zdarzeń do każdego z nich.

Uruchom aplikację.

Napiwek

Jeśli musisz zmienić stan samodzielnie (na przykład podczas ładowania zapisanego CheckBoxPreferenceelementu ), użyj Checked właściwość setter lub Toggle() Metoda.

Części tej strony to modyfikacje oparte na pracy utworzonej i udostępnionej przez projekt open source systemu Android i używane zgodnie z warunkami opisanymi wlicencji autorstwa Creative Commons 2.5.