停止 segue 并显示警报 [英] To stop segue and show alert

查看:18
本文介绍了停止 segue 并显示警报的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用 iOS 5 故事板,在一个按钮上我正在执行 segue,我想要对我的文本字段进行验证,如果验证失败,我必须停止 segue 并发出警报.有什么办法吗?

Using iOS 5 storyboards, on a button I am performing a segue, what I want is to do validation on my textfield and if validation is failed I have to stop segue and throw an alert. Whats the way to do it?

推荐答案

如果您的部署目标是 iOS 6.0 或更高版本

您可以在源视图控制器上简单地实现 shouldPerformSegueWithIdentifier:sender: 方法.如果你想执行segue,让这个方法返回YES,如果你不想,则返回NO.

If your deployment target is iOS 6.0 or later

You can simply implement the shouldPerformSegueWithIdentifier:sender: method on your source view controller. Make this method return YES if you want to perform the segue, or NO if you don't.

您需要更改故事板中的 segue 连接方式并编写更多代码.

You will need to change the way your segue is connected in the storyboard and write a little more code.

首先,设置从按钮的视图控制器到目标视图控制器的 segue,而不是直接从按钮到目标.给 segue 一个标识符,如 ValidationSucceeded.

First, set up the segue from the button's view controller to the destination view controller, instead of directly from the button to the destination. Give the segue an identifier like ValidationSucceeded.

然后,将按钮连接到其视图控制器上的操作.在操作中,执行验证并根据验证是否成功执行 segue 或显示警报.它看起来像这样:

Then, connect the button to an action on its view controller. In the action, perform the validation and either perform the segue or show an alert based on whether the validation succeeded. It will look something like this:

- (IBAction)performSegueIfValid:(id)sender {
    if ([self validationIsSuccessful]) {
        [self performSegueWithIdentifier:@"ValidationSucceeded" sender:self];
    } else {
        [self showAlertForValidationFailure];
    }
}

这篇关于停止 segue 并显示警报的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆