إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
In iOS, the UIButton class represents a button control.
A button's properties can be modified either programmatically or with Xcode's Interface Builder.
Creating a button programmatically
A UIButton can be created with only a few lines of code.
Instantiate a button and specify its type:
UIButton myButton = new UIButton(UIButtonType.System);The button's type is specified by a
UIButtonTypeproperty:UIButtonType.System- A general-purpose buttonUIButtonType.DetailDisclosure- Indicates the availability of detailed information, usually about a specific item in a tableUIButtonType.InfoDark- Indicates the availability of configuration information; dark-coloredUIButtonType.InfoLight- Indicates the availability of configuration information; light-coloredUIButtonType..AddContact- Indicates that a contact can be addedUIButtonType.Custom- Customizable button
For more information about the different button types, take a look at:
- The Custom button types section of this document
- The Button types recipe
- Apple's iOS Human Interface Guidelines.
Define the button's size and position:
myButton.Frame = new CGRect(25, 25, 300, 150);Set the button's text. Use the
SetTitlemethod, which requires the text and aUIControlStatevalue for button state:myButton.SetTitle("Hello, World!", UIControlState.Normal);The button's state types are listed below:
UIControlState.NormalUIControlState.HighlightedUIControlState.DisabledUIControlState.SelectedUIControlState.FocusedUIControlState.ApplicationUIControlState.Reserved
For more information about styling a button and setting its text, refer to:
- The Styling a button section of this document
- The Set button text recipe.
Handling a button tap
To respond to a button tap, provide a handler for the button's
TouchUpInside event:
myButton.TouchUpInside += (sender, e) => {
DoSomething();
};
Note
TouchUpInside is not the only available button event. UIButton is a
child class of UIControl, which defines
many different events.
Styling a button
UIButton controls can exist in a number of different states, each
specified by a UIControlState value – Normal, Disabled,
Focused, Highlighted, etc. Each state can be given a unique style,
specified programmatically or with the iOS Designer.
Note
For a complete list of all UIControlState values, take a look at the
UIKit.UIControlState enumeration
documentation.
For example, to set the title color and shadow color for
UIControlState.Normal:
myButton.SetTitleColor(UIColor.White, UIControlState.Normal);
myButton.SetTitleShadowColor(UIColor.Black, UIControlState.Normal);
The following code sets the button title to an attributed (stylized) string
for UIControlState.Normal and 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);
Custom button types
Buttons with a UIButtonType of Custom have no default styles. However,
it's possible to configure the button's appearance by setting an image for
its different states:
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);
Depending on whether the user is touching the button or not, it will
render as one of the following images (UIControlState.Normal,
UIControlState.Highlighted and UIControlState.Selected states,
respectively):

For more information about working with custom buttons, refer to the Use an image for a button recipe.