Ios 即使statation不正确,也会运行Swift segue

Ios 即使statation不正确,也会运行Swift segue,ios,swift,if-statement,segue,Ios,Swift,If Statement,Segue,如果文本字段中没有文本,我将尝试停止segue的运行 @IBAction func action(_ sender: Any) { if( email.text != ""){ emailaddress = email.text! performSegue(withIdentifier: "segue", sender: self) } else { print("enter a email") } } “

如果文本字段中没有文本,我将尝试停止segue的运行

@IBAction func action(_ sender: Any) {
    if( email.text != ""){
        emailaddress = email.text!
        performSegue(withIdentifier: "segue", sender: self)
    }
    else
    {
        print("enter a email")
    }
}

“输入电子邮件”在输出中打印出来,但它仍然执行该序列。

不要将序列附加到按钮上,因为如果序列直接附加到按钮上,则PerformScheue将通过单击而不是通过行执行

performSegue(withIdentifier: "segue", sender: self)

只需将您的segue从黄色图标拖放到下一个控制器

将segue between view controller not按钮添加到view controller。看到图片了吗

在此之后,使用条件调用此方法on按钮

performSegue(withIdentifier: "segue", sender: self)

你确定没有将segue附加到按钮上吗?如果该代码打印“输入电子邮件”,则该代码不执行segue。发生这种情况是因为其他原因。请检查我的回答。另一种选择是将segue设置在按钮上,并在视图控制器中实现
shouldPerformSegue
——如果使用此方法返回
false
,则segue将被取消