【问题标题】:Xcode - Show segue from modal view controllerXcode - 从模态视图控制器显示 segue
【发布时间】:2017-05-13 02:40:12
【问题描述】:

我正在呈现一个带有 tableView 的模态视图控制器,然后想要在模态呈现的视图控制器内点击一个单元格时执行推送。

我设置了一个视图控制器和一个从模态视图控制器到新视图控制器的显示(推送)segue,但是当我调用 performSegueWithIdentifier 时,新视图以模态方式(向上滑动)呈现在初始模态视图,而不是从右侧进入。

有人知道怎么回事吗?

谢谢!

【问题讨论】:

  • 请提供相关代码或storyboard截图。

标签: swift xcode uiviewcontroller segue


【解决方案1】:

对于以后遇到这个问题的人,我想通了:

您需要另一个导航控制器。所以我对新的导航控制器执行模态segue,并将模态视图控制器设置为导航控制器的根视图控制器。然后,我可以像往常一样从模态视图控制器到任何其他控制器执行 show segue。

:)

【讨论】:

  • 嗨,你能分享一些代码来帮助更好地解释这个吗?...谢谢!
  • @user3708224 - 以下是如何以编程方式完成此操作的示例:myModalVC = MyModalVC(); let anotherNavigationController = UINavigationController(); anotherNavigationController.setViewControllers([myModalVC], animated: true); present(anotherNavigationController, animated: true, completion: nil);
【解决方案2】:

从 Xcode 11.4(可能更早)开始,您还可以选择目标视图控制器,然后在属性检查器下的右侧检查器窗格中,您可以选择:“过渡样式”和“演示”,这将允许您从例如自动到全屏。这样,当您从模态呈现的视图控制器中使用“push”时,您可以覆盖这一点,segue 将始终以模态呈现下一个视图控制器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-14
    • 1970-01-01
    • 2017-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多