Creating UIActionSheet [duplicate] Creating UIActionSheet [duplicate] ios ios

Creating UIActionSheet [duplicate]


You need to use a UIActionSheet.

First you need to add UIActionSheetDelegate to your ViewController.h file.

Then you can reference an actionsheet with:

  UIActionSheet *popup = [[UIActionSheet alloc] initWithTitle:@"Select Sharing option:" delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:                        @"Share on Facebook",                        @"Share on Twitter",                        @"Share via E-mail",                        @"Save to Camera Roll",                        @"Rate this App",                        nil];   popup.tag = 1;  [popup showInView:self.view];

Then you have to handle each of the calls.

- (void)actionSheet:(UIActionSheet *)popup clickedButtonAtIndex:(NSInteger)buttonIndex {  switch (popup.tag) {    case 1: {        switch (buttonIndex) {            case 0:                [self FBShare];                break;            case 1:                [self TwitterShare];                break;            case 2:                [self emailContent];                break;            case 3:                [self saveContent];                break;            case 4:                [self rateAppYes];                break;            default:                break;        }        break;    }    default:        break; }}

This has been deprecated for iOS 8.xhttps://developer.apple.com/documentation/uikit/uialertcontroller#//apple_ref/occ/cl/UIAlertController


Take a look at the UIActionSheet documentation.

NSString *actionSheetTitle = @"Action Sheet Demo"; //Action Sheet TitleNSString *destructiveTitle = @"Destructive Button"; //Action Sheet Button TitlesNSString *other1 = @"Other Button 1";NSString *other2 = @"Other Button 2";NSString *other3 = @"Other Button 3";NSString *cancelTitle = @"Cancel Button";UIActionSheet *actionSheet = [[UIActionSheet alloc]                              initWithTitle:actionSheetTitle                              delegate:self                              cancelButtonTitle:cancelTitle                              destructiveButtonTitle:destructiveTitle                              otherButtonTitles:other1, other2, other3, nil];[actionSheet showInView:self.view];


It is called an UIActionSheet: You create one like so:

    NSString *actionSheetTitle = @"Action Sheet Demo"; //Action Sheet TitleNSString *destructiveTitle = @"Destructive Button"; //Action Sheet Button TitlesNSString *other1 = @"Other Button 1";NSString *other2 = @"Other Button 2";NSString *other3 = @"Other Button 3";NSString *cancelTitle = @"Cancel Button";UIActionSheet *actionSheet = [[UIActionSheet alloc]                              initWithTitle:actionSheetTitle                              delegate:self                              cancelButtonTitle:cancelTitle                              destructiveButtonTitle:destructiveTitle                              otherButtonTitles:other1, other2, other3, nil];[actionSheet showInView:self.view];

Implement the UISctionSheetDelegate to respond to button action.

Take a look at this tutorial for more info: http://mobile.tutsplus.com/tutorials/iphone/uiactionsheet_uiactionsheetdelegate (Code is from this tutorial)