如何解除模态segue然后执行push segue到新视图控制器 [英] How can I dismiss a modal segue then perform push segue to new view controller

查看:175
本文介绍了如何解除模态segue然后执行push segue到新视图控制器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在解雇<$ c $后,我试图从导航控制器执行 push segue c> modal 之前通过导航控制器显示

I'm trying to perform a push segue from a navigation controller, after dismissing a modal that was previously presented over the navigation controller.

内部模态( UIViewController ):

func textFieldShouldReturn(textField: UITextField) -> Bool {
    var searchNav = SearchNavigationController()
    self.dismissViewControllerAnimated(true, completion: {searchNav.goToNextView()})
    return true
}

内部 SearchNavigationController

func goToNextView() {
    performSegueWithIdentifier("searchNavigationToNextView", sender: self)
}

问题是,当我点击返回时,我收到此错误:

The issue is that when I hit return, I get this error:


由于未捕获的异常而终止应用程序
'NSInvalidArgumentException',原因:'Receiver
()没有带有
标识符的segue'searchNavigationToNextView''

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Receiver () has no segue with identifier 'searchNavigationToNextView''

segue出现在我的故事板中,从 UINavigationController 下一个视图

The segue is present in my storyboard, going from the UINavigationController to the next view.

编辑:试过这个,其中_sender在SingleSearchViewcontroller中声明为var _sender = self并且它不起作用。

tried this, where _sender is declared in SingleSearchViewcontroller as var _sender = self and it did not work.

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
        if segue.identifier == "searchNavigationToSingleSearch" {
            let singleVC = segue.destinationViewController as! SingleSearchViewController

            singleVC._sender = self
        }
    }


推荐答案

将代码更新为,

func textFieldShouldReturn(textField: UITextField) -> Bool {
    var searchNav = SearchNavigationController()
    self.dismissViewControllerAnimated(true, completion: {self.presentingViewController.goToNextView()})
    return true
}

这篇关于如何解除模态segue然后执行push segue到新视图控制器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆