Try like this.
First create a property
@property (weak, nonatomic) UIActionSheet *actionSheet;
@synthesize actionSheet = _actionSheet;
After that button action
- (IBAction)clickActionSheet:(UIBarButtonItem *)sender {
if (self.actionSheet) {
// do nothing
} else {
UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"Action sheet demo" delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:@"Do something else" otherButtonTitles:DO_SOMETHING_ELSE, nil];
[actionSheet showFromBarButtonItem:sender animated:YES];
}
}
Implement this UIActionSheetDelegate
-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex(NSInteger)buttonIndex
{
NSString *choice = [actionSheet buttonTitleAtIndex:buttonIndex];
if (buttonIndex == [actionSheet destructiveButtonIndex]) {
// destroy something
NSLog(@"Destroy");
} else if ([choice isEqualToString:DO_SOMETHING_ELSE]){
// do something else
NSLog(@"Do something else");
}
}