Aracılığıyla paylaş


Xamarin.iOS'taki düğmeler

iOS'ta sınıfı UIButton bir düğme denetimini temsil eder.

Bir düğmenin özellikleri program aracılığıyla veya Xcode'un Arabirim Oluşturucusu ile değiştirilebilir.

Program aracılığıyla düğme oluşturma

UIButton yalnızca birkaç kod satırıyla oluşturulabilir.

  • Bir düğmenin örneğini oluşturma ve türünü belirtme:

    UIButton myButton = new UIButton(UIButtonType.System);
    

    Düğmenin türü bir UIButtonType özellik tarafından belirtilir:

    • UIButtonType.System - Genel amaçlı düğme
    • UIButtonType.DetailDisclosure - Genellikle tablodaki belirli bir öğe hakkında ayrıntılı bilgilerin kullanılabilirliğini gösterir
    • UIButtonType.InfoDark - Yapılandırma bilgilerinin kullanılabilirliğini gösterir; koyu renkli
    • UIButtonType.InfoLight - Yapılandırma bilgilerinin kullanılabilirliğini gösterir; açık renkli
    • UIButtonType..AddContact - Kişinin eklenebileceğini gösterir
    • UIButtonType.Custom - Özelleştirilebilir düğmesi

    Farklı düğme türleri hakkında daha fazla bilgi için aşağıdakilere göz atın:

  • Düğmenin boyutunu ve konumunu tanımlayın:

    myButton.Frame = new CGRect(25, 25, 300, 150);
    
  • Düğmenin metnini ayarlayın. SetTitle Düğme durumu için metin ve UIControlState değer gerektiren yöntemini kullanın:

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

    Düğmenin durum türleri aşağıda listelenmiştir:

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

    Düğmeyi şekillendirme ve metni ayarlama hakkında daha fazla bilgi için bkz:

Düğmeye dokunmayı işleme

Bir düğmeye dokunmaya yanıt vermek için, düğmenin TouchUpInside olayı için bir işleyici sağlayın:

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

Not

TouchUpInside tek kullanılabilir düğme olayı değildir. UIButton, birçok farklı olayı tanımlayan bir alt sınıfıdır.UIControl

Düğme stili oluşturma

UIButtondenetimleri, her biri bir UIControlState değerle belirtilen bir dizi farklı durumda bulunabilir: Normal, Disabled, Focused, , Highlightedvb. Her duruma program aracılığıyla veya iOS Tasarım Aracı ile belirtilen benzersiz bir stil verilebilir.

Not

Tüm UIControlState değerlerin tam listesi için UIKit.UIControlState enumeration Belge.

Örneğin, için başlık rengini ve gölge rengini ayarlamak için UIControlState.Normal:

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

Aşağıdaki kod, düğme başlığını ve UIControlState.Highlightediçin öznitelikli (stilize edilmiş) bir dizeye UIControlState.Normal ayarlar:

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);

Özel düğme türleri

bir UIButtonType içeren düğmelerin Custom varsayılan stilleri yoktur. Ancak, farklı durumları için bir görüntü ayarlayarak düğmenin görünümünü yapılandırmak mümkündür:

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);

Kullanıcının düğmeye dokunup dokunmadığına bağlı olarak, aşağıdaki görüntülerden (UIControlState.NormalUIControlState.Highlightedve UIControlState.Selected durumları sırasıyla) biri olarak işlenir:

UIControlState.NormalUIControlState.HighlightedUIControlState.Selected

Özel düğmelerle çalışma hakkında daha fazla bilgi için Düğme tarifi için resim kullanma bölümüne bakın.