Xamarin.Android Switch

Widget Switch (ditunjukkan di bawah) memungkinkan pengguna untuk beralih di antara dua status, seperti AKTIF atau NONAKTIF. Nilai Switch defaultnya adalah NONAKTIF. Widget ditunjukkan di bawah ini dalam status AKTIF dan NONAKTIF:

Cuplikan layar widget Switch di status NONAKTIF dan AKTIF

Membuat Pengalihan

Untuk membuat sakelar, cukup deklarasikan Switch elemen di XML sebagai berikut:

<Switch android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

Ini membuat sakelar dasar seperti yang ditunjukkan di bawah ini:

Cuplikan layar aplikasi demo yang menampilkan Sakelar dalam status NONAKTIF

Mengubah Nilai Default

Teks yang ditampilkan kontrol untuk status ON dan OFF dan nilai default dapat dikonfigurasi. Misalnya, untuk membuat Beralih default ke AKTIF dan membaca NO/YES alih-alih OFF/ON, kita dapat mengatur checkedatribut , textOn, dan textOff di XML berikut.

<Switch android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="true"
        android:textOn="YES"
        android:textOff="NO" />

Memberikan Judul

Widget Switch juga mendukung termasuk label teks dengan mengatur text atribut sebagai berikut:

<Switch android:text="Is Xamarin.Android great?"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="true"
        android:textOn="YES"
        android:textOff="NO" />

Markup ini menghasilkan cuplikan layar berikut pada runtime:

Cuplikan layar aplikasi demo dengan teks secara horizontal sebelum widget Beralih

SwitchSaat nilai berubah, nilai tersebut akan memunculkan CheckedChange peristiwa. Misalnya, dalam kode berikut kami mengambil peristiwa ini dan menyajikan Toast widget dengan pesan berdasarkan isChecked nilai Switch, yang diteruskan ke penanganan aktivitas sebagai bagian CompoundButton.CheckedChangeEventArg dari argumen.

Switch s = FindViewById<Switch> (Resource.Id.monitored_switch);
           
s.CheckedChange += delegate(object sender, CompoundButton.CheckedChangeEventArgs e) {
    var toast = Toast.MakeText (this, "Your answer is " +
        (e.IsChecked ?  "correct" : "incorrect"), ToastLength.Short);
    toast.Show ();
};