Displaying Alerts
A common user interface task is displaying an alert, either to advise the user of an error condition or make a choice. The simplest alert contains a single button, as shown in this screenshot:
The code to display a simple alert requires only a constructor and then calling the Show method.
UIAlertView alert = new UIAlertView ("Title", "The message", null, "OK", null);
alert.Show();
Displaying an alert with multiple options, having different behavior, can be done by passing a string array of button names to the constructor. For example, the following screenshot shows an alert with two buttons:
The clicked event has a parameter of type UIButtonEventArgs
that contains the ButtonIndex
of the button that was pressed. In this example the OK button will be index zero and the Cancel button will be index one.
UIAlertView alert = new UIAlertView ("Alert Title", "Choose from two buttons", null, "OK", new string[] {"Cancel"});
alert.Clicked += (s, b) => {
label1.Text = "Button " + b.ButtonIndex.ToString () + " clicked";
Console.WriteLine ("Button " + b.ButtonIndex.ToString () + " clicked");
};
alert.Show();
Alerts can also display additional buttons in a vertical layout as shown below:
Buttons can be added using the AddButton
method – their index in the Clicked event handler will correspond to the order they were added.
UIAlertView alert = new UIAlertView () {
Title = "custom buttons alert",
Message = "this alert has custom buttons"
};
alert.AddButton("OK");
alert.AddButton("custom button 1");
alert.AddButton("Cancel");
// last button added is the 'cancel' button (index of '2')
alert.Clicked += delegate(object a, UIButtonEventArgs b) {
Console.WriteLine ("Button " + b.ButtonIndex.ToString () + " clicked"); };
alert.Show ();