Unwind segue——只能声明实例方法@IBAction;和按钮不连接到退出

Unwind segue - only instance methods can be declared @IBAction; and button does not connect to Exit

我遇到的问题与 this question 中的问题大致相同,但这些解决方案不起作用。当前 运行 xcode 7.3.1.

我有一个拆分视图控制器应用程序,它以模式方式呈现一个保存记录视图控制器。在保存 VC 上,有一个保存和取消按钮,应该(在这两种情况下)返回到主视图。

在主视图控制器中,我有以下代码:

@IBAction func unwindToSegue (segue: UIStoryboardSegue) { }

但是,出现编译器错误:只能将实例方法声明为@IBAction。有删除@IBAction 的建议,但是虽然这消除了我无法连接到子项中的此操作的错误 VC。

在 unwind 方法中使用或不使用 @IBAction,我都会遇到所引用问题中描述的相同问题 - 从我的 UIButton 拖动一条线到 Storyboard IB 中的退出按钮,不显示任何要连接的操作。

您需要将函数放在 UIViewController 中。

class MasterViewController: UIViewController {
    @IBAction func unwindToSegue(segue: UIStoryboardSegue) { }
}

当我的代码中有一个额外的括号时,我就得到了这个错误...它位于 IBAction 方法之前,所以它基本上切断了它在 UIViewController class 中的位置,正如 Tomas 所建议的.因此,请检查您的所有括号是否都已到位。

@IBAction 在语法方面非常挑剔,包括字符串之间的白色 spaces。例如,nameA.txt ="" 是不可接受的。 你需要有相等的白色 space 与字符串相邻,例如 nameA.text = ""