Udostępnij za pośrednictwem


ToggleButton

W tej sekcji utworzysz przycisk używany specjalnie do przełączania między dwoma stanami przy użyciu widżetu ToggleButton . Ten widżet jest doskonałą alternatywą dla przycisków radiowych, jeśli masz dwa proste stany, które wzajemnie się wykluczają ("włączone" i "wyłączone", na przykład). System Android 4.0 (poziom 14 interfejsu API) wprowadził alternatywę dla przycisku przełącznika Switchznanego jako .

Przykład toggleButton można zobaczyć w lewej parze obrazów, podczas gdy po prawej stronie para obrazów przedstawia przykład przełącznika:

Examples of Switches and ToggleButtons in both on and off states

Która kontrolka używa aplikacji, jest kwestią stylu. Oba widżety są funkcjonalnie równoważne.

Otwórz plik Resources/layout/Main.axml i dodaj ToggleButton element (wewnątrz pliku LinearLayout):

Aby zrobić coś po zmianie stanu, dodaj następujący kod na końcu OnCreate() Metoda:

ToggleButton togglebutton = FindViewById<ToggleButton>(Resource.Id.togglebutton);

togglebutton.Click += (o, e) => {
    // Perform action on clicks
    if (togglebutton.Checked)
        Toast.MakeText(this, "Checked", ToastLength.Short).Show ();
    else
        Toast.MakeText(this, "Not checked", ToastLength.Short).Show ();
};

Przechwytuje element ToggleButton z układu i obsługuje zdarzenie Click, które definiuje akcję do wykonania po kliknięciu przycisku. W tym przykładzie metoda sprawdza nowy stan przycisku, a następnie wyświetla Toast komunikat wskazujący bieżący stan.

Zwróć uwagę, że funkcja ToggleButton obsługuje własną zmianę stanu między zaznaczonymi i niezaznakowanym, więc wystarczy zapytać, która z nich jest.

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.