【问题标题】:UINavigationController skip push current view controllerUINavigationController 跳过推送当前视图控制器
【发布时间】:2016-07-29 22:33:51
【问题描述】:

我现在有 5 个视图控制器,视图控制器 1、2、3、4 和 5。我正在使用 UINavigationController。

我会按顺序进入,视图控制器 1,视图控制器 2,视图控制器 3,视图控制器 4

但是当我点击视图控制器 4 的左上角按钮时,默认情况下我会弹出到第三个视图控制器。我不想那样,我想弹出到第二个视图控制器。所以当我进入第三个视图控制器时,我想删除第三个视图控制器堆栈。所以我可以从第四个视图控制器转到第二个视图控制器。

有人知道怎么做吗?

【问题讨论】:

    标签: ios swift uinavigationcontroller


    【解决方案1】:

    当您单击按钮时,您可以执行以下操作:

    navigationController?.viewControllers.removeAtIndex(2)
    navigationController?.popViewControllerAnimated(true)
    

    移除第 3 个视图控制器,然后弹出第 4 个,然后您将进入第 2 个。

    【讨论】:

      【解决方案2】:

      如果使用情节提要,您需要定义展开转场。将此添加到视图控制器 2:

      @IBAction func unwindViewController2(segue:UIStoryboardSegue) {
      }
      

      返回故事板,现在您应该可以看到将按钮的操作链接到退出按钮时的函数

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-12-07
        • 2015-07-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-11-08
        相关资源
        最近更新 更多