如果满足条件,如何在swift中返回(跳过其余的)函数

r40*_*405 2 xcode uitextfield ibaction segue swift

我有一个segue设置按下按钮时执行.如果当前视图控制器中的文本字段为nil,我想结束该函数并使segue无效.到目前为止没有运气.我该怎么做呢?这是我有的:

@IBAction func myButton(_ sender: Any) {
    if textField.text == nil {

        return

    } else {

    performSegue(withIdentifier: "theSegue", sender: sender)

    }
}
Run Code Online (Sandbox Code Playgroud)

提前致谢.

vad*_*ian 5

尽管文档暗示它(声明为可选),但text实际上该属性不是nil(默认情况下,此字符串为@"").

我建议另外检查空字符串.

@IBAction func myButton(_ sender: Any) {
   guard let text = textField.text, !text.isEmpty else { return }
   performSegue(withIdentifier: "theSegue", sender: sender)
}
Run Code Online (Sandbox Code Playgroud)