展开segue - 只能声明实例方法@IBAction;并且按钮未连接到退出

时间:2016-05-17 13:47:06

标签: ios swift ibaction unwind-segue

我和this question中的问题差不多,但这些解决方案不起作用。目前正在运行xcode 7.3.1。

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

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

@IBAction func unwindToSegue (segue: UIStoryboardSegue) { }

但是,有一个编译器错误:只能声明实例方法@IBAction。有删除@IBAction的建议,但是这样就删除了错误,我无法连接到子VC中的这个动作。

在unwind方法中有或没有@IBAction,我得到了引用问题中描述的相同问题 - 从我的UIButton拖动一行到Storyboard IB中的Exit按钮,没有显示任何要连接的动作。

3 个答案:

答案 0 :(得分:1)

您需要将该函数放在UIViewController中。

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

答案 1 :(得分:1)

当我在代码中有一个额外的括号时,我得到了这个错误......它位于IBAction方法之前,因此它基本上将其从UIViewController类中删除,正如Tomas建议的那样。因此,请检查所有括号是否到位。

答案 2 :(得分:0)

@IBAction在语法方面非常挑剔,包括字符串之间的空格。例如,nameA.txt =“”是不可接受的。 你需要有相等的白色空间连续的字符串,如 nameA.text =“”