UIAlertView 展开 Segue 处理程序

UIAlertView Unwind Segue Handler

我有一个模态呈现的视图控制器,我想展开它。我已将其设置为如果我按 "cancel",它将执行展开转场。但是,我想使用 UIAlertView 制作一个确认按钮。如 "Are you sure you'd like to cancel?"。我如何使用 UIAlertView 按钮触发展开转场?

在您的 .h 文件中,声明 UIAlertViewDelegate。然后在你的.m文件中,你可以在取消按钮操作方法中编写代码:

- (IBAction)confirmationButtonPressed:(id)sender{
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Warning" message:@"Are you sure you'd like to cancel?" delegate:self cancelButtonTitle:@"Yes" otherButtonTitles:@"No",nil];
    [alert show];
}

然后你可以在你的 .m 文件中添加 UIAlertView Delegate 方法:

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
    if(buttonIndex == 0){
        [self dismissViewControllerAnimated:YES completion:nil];
    }
}

通过选择整个视图控制器并按住 ctrl 键拖动鼠标退出,从情节提要中声明手动展开 segue。 给那个 segue 一个标识符,并使用 performSegueWithIdentifier 方法从 UIAlertView 的委托中触发 segue