使用“后退”按钮展开segue功能

时间:2015-03-24 15:28:59

标签: ios swift segue

我在导航控制器中按默认返回按钮(例如< Settings )时尝试调用功能。

在其他情况下我创建自定义按钮,在我按下Ctrl +拖动到XCode中的红色退出按钮并将其指向选择segue。

现在我需要使用导航控制器的默认后退按钮,但我无法设置将其分配给segue操作,因为它在Storyboard视图中没有后退按钮(但它存在于模拟器中)。

模拟器:

Simulator

的XCode: XCode

我可以在导航控制器中创建自定义按钮并将其分配给自定义展开segue,但是如果没有"那么该按钮将是丑陋的。 "符号

我在stackoverflow上找到了一些答案,但它们都是用Objective-C编写的:(。

2 个答案:

答案 0 :(得分:1)

您可以使用委托方法来完成您正在执行的操作。

这是一个经过深思熟虑的快速教程,用于处理委托和segues: http://makeapppie.com/2014/07/05/using-delegates-and-segues-part-2-the-pizza-demo-app/

你所要求的,能够捕捉后退按钮的动作,是不可能按你描述的方式进行的。

大多数人会建议创建一个自定义按钮,然后使用展开segue。

有很多关于自定义后退按钮的教程,以防您对swift不熟悉,并且可以通过将自己的箭头放在那里轻松修复自定义后退按钮的丑陋部分。

此外,我发现此问题以供将来参考:Unwind segue from navigation back button in Swift

答案 1 :(得分:1)

实际上我只是将展开的segue分配给整个视图控制器(从黄色视图控制器插座右键单击并拖动到出口,然后选择功能)。到目前为止它的效果很好。不需要自定义按钮,没有委托。 事实上,在我的项目中,孩子应该根据当前的调用者视图控制器调用不同的父函数,并简单地使用相同的函数名称使我的梦想成真。

这页帮助了我很多:http://spin.atomicobject.com/2014/12/01/program-ios-unwind-segue/