我正在尝试找到一种方法来捕获从segue到根控制器的返回,这样我就可以运行自定义代码来决定下一步该做什么。我已经尝试了下面的两种方法,他们没有做到这一点,因为他们似乎(显然)关心展开segue堆栈。有什么想法吗?
-(UIStoryboardSegue *)segueForUnwindingToViewController
{
}
-(BOOL)canPerformUnwindSegueAction
{
}
答案 0 :(得分:6)
仅适用于iOS 6:
“在您希望返回的控制器中,实现一个返回IBAction的方法,并且该方法需要一个UIStoryboardSegue参数:
- (IBAction)returnActionForSegue:(UIStoryboardSegue *)returnSegue {
// do useful actions here.
}
现在,在场景中我们希望放松,从UI元素控制拖动,触发返回场景的退出图标(停靠栏中的绿色图标)。在弹出菜单中,选择先前定义的返回项目。“
更多信息:http://www.freelancemadscience.com/fmslabs_blog/2012/9/24/advanced-storyboard-techniques.html
答案 1 :(得分:2)
您的方法调用不完整。这是另一篇文章,提供了一些如何使用unwind方法的好例子:
答案 2 :(得分:0)
如果您只需要知道何时从堆栈中删除VC,请注意布尔值isMovingFromParent
。
在isMovingFromParent
或viewWillDisappear
中检查viewDidDisappear
,以确保您的视图不再存在。