2017-03-01 75 views
0

因此,这是我目前的问题。按钮会忽略前一个视图控制器的动作

我想解开前面的viewcontroller让我们称之为viewcontroller1。 这工作正常,除了与segue挂钩的按钮动作 ,还有很多其他代码写在它。但是,按下xcode按钮会忽略已写入的代码。

所以这是我的问题我该如何让按钮执行书面代码,然后搞塞格?

对于unwind segue,我在ViewController1中创建了一个空行为。

@IBAction func unwindtoViewcontroller1(segue: UIStoryboardSegue){} 

并使用此segue动作(使用ViewController2:s退出按钮)勾起ViewController2。 我也将segue设置为“revealviewcontrollerpushviewcontroller”

在此先感谢我所能获得的所有帮助,我真的陷入了困境。

问候阿尔宾

回答

0

你应该能够做到这一点是这样的:从执行中的ViewController 2开卷SEGUE创建一个IBAction为按钮
打开助理编辑,然后控件拖动。这就是所有你希望按钮做的动作的代码应该去的地方。
在调用unwind segue函数之前执行此操作。
所以你的按钮将同时做到:动作和放松。
我做了一个简单的项目来演示并将输出结果打印到控制台。 yellowVC中的按钮在展开之前执行操作。
所以,如你所说,在第一个视图控制器(在我的例子绿色的你有一个IBAction为放卷赛格瑞

@IBAction func goBackToGreenVC(segue: UIStoryboardSegue) { 
     print("go back") 
} 

然后在第二个视图控制器(在我的情况下,黄色的),从控制拖动按钮退出设置开卷赛格瑞然后还要控制从按钮助理编辑阻力为IBAction为,是这样的:

@IBAction func goBackToGreenVCButtonTapped(_ sender: UIButton) { 
    print("performing an action before unwind") 
} 

storyboardenter image description here

相关问题