Question: I'm presenting a `UIActionSheet` in my view and one of the action sheet's buttons presents another action sheet. When I present the second action sheet on iPad I get this warning message in the logs:

> 
> UIPopoverBackgroundVisualEffectView is being asked to animate its opacity. This will cause the effect to appear broken until opacity returns to 1.
> 
> 
> 

This is my code:

```
UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"Option"] delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:@"Sort", nil];
actionSheet.tag = 1;
[actionSheet showInView:self.view];

```

And in the delegate: 

```
-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {
    [self showSortAction];
}

-(void)showSortAction {    
    UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"Sort By" delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil otherButtonTitles:@"A-Z", @"Z-A", @"Newer to older", @"Older to newer", nil];        
    actionSheet.tag = 2;
    [actionSheet showInView:self.view];
}

```

Answer: 
My guess is that the presentation of the second action sheet is causing the first action sheet's opacity to change, triggering the warning you're seeing. Instead of calling `-showSortAction` from within `-actionSheet:clickedButtonAtIndex:`, call it from within `-actionSheet:didDismissWithButtonIndex:`. This gives the first action sheet enough time to disappear from the screen before the second one starts animating in. (See the [UIActionSheetDelegate documentation](https://developer.apple.com/reference/uikit/uiactionsheetdelegate) – specifically, the detail text for the clicked and did-dismiss methods.)

While we're on the subject, though, note that the [UIActionSheet documentation](https://developer.apple.com/reference/uikit/uiactionsheet) says it's deprecated as of iOS 8. Unless you're programming against iOS 7 or older, consider transitioning to UIAlertController as soon as possible.
@Tim is correct above. 

You shouldn't be using the deprecated UIActionSheet anymore. His solution about using `actionSheet:didDismissWithButtonIndex:` might have worked before but as per <https://stackoverflow.com/a/25044710/1634905> it won't work anymore as Apple has moved on to `UIAlertController`. 

You really should switch your code to `UIAlertController` instead of the old method to fix the issue.