4

In my iPhone app, I have an actionsheet which has 4 buttons.

Now to perform actions on click of these buttons, I have implemented ActionSheet Delegate.

The action sheet delegate method does not get called on click of the buttons. The same code works when integrated to another project.

I have declared all the method names properly.

Below is the screenshot which shows the delegate method

alt text

What could be wrong?

halfer
  • 19,824
  • 17
  • 99
  • 186
Parth Bhatt
  • 19,381
  • 28
  • 133
  • 216

2 Answers2

7

Make sure you have set your UIActionSheet delegate to self:

actionSheet.delegate = self;

and also make sure you're implementing <UIActionSheetDelegate> in the header file.

cmlloyd
  • 975
  • 9
  • 14
4

If you use the code to call the action sheet like below

UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"YOUR TITLE" delegate:self cancelButtonTitle:nil destructiveButtonTitle:@"YOUR MESSAGE" otherButtonTitles:@"Cancel", nil];
[actionSheet showInView:self.view];
[actionSheet release];

Then there won't be an issue calling the delegate method,

-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex 

Cheers

Aditya
  • 4,414
  • 5
  • 29
  • 40