Bagikan melalui


Tombol di Xamarin.iOS

Di iOS, UIButton kelas mewakili kontrol tombol.

Properti tombol dapat dimodifikasi baik secara terprogram atau dengan Penyusun Antarmuka Xcode.

Membuat tombol secara terprogram

Dapat UIButton dibuat hanya dengan beberapa baris kode.

  • Buat tombol dan tentukan jenisnya:

    UIButton myButton = new UIButton(UIButtonType.System);
    

    Jenis tombol ditentukan oleh UIButtonType properti:

    • UIButtonType.System - Tombol tujuan umum
    • UIButtonType.DetailDisclosure - Menunjukkan ketersediaan informasi terperinci, biasanya tentang item tertentu dalam tabel
    • UIButtonType.InfoDark - Menunjukkan ketersediaan informasi konfigurasi; berwarna gelap
    • UIButtonType.InfoLight - Menunjukkan ketersediaan informasi konfigurasi; berwarna terang
    • UIButtonType..AddContact - Menunjukkan bahwa kontak dapat ditambahkan
    • UIButtonType.Custom - Tombol yang dapat disesuaikan

    Untuk informasi selengkapnya tentang berbagai jenis tombol, lihat:

    • Bagian Tipe tombol Kustom dari dokumen ini
    • Resep jenis Tombol
    • Pedoman Antarmuka Manusia iOS Apple.
  • Tentukan ukuran dan posisi tombol:

    myButton.Frame = new CGRect(25, 25, 300, 150);
    
  • Atur teks tombol. SetTitle Gunakan metode , yang memerlukan teks dan UIControlState nilai untuk status tombol:

    myButton.SetTitle("Hello, World!", UIControlState.Normal);
    

    Jenis status tombol tercantum di bawah ini:

    • UIControlState.Normal
    • UIControlState.Highlighted
    • UIControlState.Disabled
    • UIControlState.Selected
    • UIControlState.Focused
    • UIControlState.Application
    • UIControlState.Reserved

    Untuk informasi selengkapnya tentang menata tombol dan mengatur teksnya, lihat:

Menangani ketukan tombol

Untuk menanggapi ketukan tombol, berikan handler untuk peristiwa tombol TouchUpInside :

myButton.TouchUpInside += (sender, e) => {
    DoSomething();
};

Catatan

TouchUpInside bukan satu-satunya peristiwa tombol yang tersedia. UIButton adalah kelas anak dari UIControl, yang mendefinisikan banyak peristiwa yang berbeda.

Menata tombol

UIButtonkontrol dapat ada di sejumlah status yang berbeda, masing-masing ditentukan oleh UIControlState nilai - Normal, , DisabledFocused, Highlighted, dll. Setiap status dapat diberikan gaya unik, ditentukan secara terprogram atau dengan iOS Designer.

Catatan

Untuk daftar lengkap semua UIControlState nilai, lihat UIKit.UIControlState enumeration Dokumentasi.

Misalnya, untuk mengatur warna judul dan warna bayangan untuk UIControlState.Normal:

myButton.SetTitleColor(UIColor.White, UIControlState.Normal);
myButton.SetTitleShadowColor(UIColor.Black, UIControlState.Normal);

Kode berikut mengatur judul tombol ke string atribut (bergaya) untuk UIControlState.Normal dan UIControlState.Highlighted:

var normalAttributedTitle = new NSAttributedString(buttonTitle, foregroundColor: UIColor.Blue, strikethroughStyle: NSUnderlineStyle.Single);
myButton.SetAttributedTitle(normalAttributedTitle, UIControlState.Normal);

var highlightedAttributedTitle = new NSAttributedString(buttonTitle, foregroundColor: UIColor.Green, strikethroughStyle: NSUnderlineStyle.Thick);
myButton.SetAttributedTitle(highlightedAttributedTitle, UIControlState.Highlighted);

Jenis tombol kustom

Tombol dengan UIButtonType gaya Custom tidak memiliki gaya default. Namun, dimungkinkan untuk mengonfigurasi tampilan tombol dengan mengatur gambar untuk statusnya yang berbeda:

myButton.SetImage (UIImage.FromBundle ("Buttons/MagicWand.png"), UIControlState.Normal);
myButton.SetImage (UIImage.FromBundle ("Buttons/MagicWand_Highlight.png"), UIControlState.Highlighted);
myButton.SetImage (UIImage.FromBundle ("Buttons/MagicWand_On.png"), UIControlState.Selected);

Tergantung pada apakah pengguna menyentuh tombol atau tidak, itu akan dirender sebagai salah satu gambar berikut (UIControlState.Normal, UIControlState.Highlighted dan UIControlState.Selected menyatakan, masing-masing):

UIControlState.NormalUIControlState.HighlightedUIControlState.Selected

Untuk informasi selengkapnya tentang bekerja dengan tombol kustom, lihat menggunakan gambar untuk resep tombol .