我的目标是呈现一个 View Controller 而不直接关闭它的 presentingViewController
.
为了更清楚,请考虑以下示例:
引用这个 Storyboard:
假设第一个黑色 View Controller 是第一个(初始) View Controller ,它应该呈现第三个白色 View Controller ;问题是白色 View Controller 应该关闭到第二个橙色 View Controller ,但不是黑色 View Controller ,所以它应该表现得像:
- 黑色 VC 礼物 白色 VC。
- White VC 解雇给Orange VC。
- Orange VC Dismisses 给 Black VC。
如何应用这样的行为?
备注:没有导航 Controller ,应该是present/dismiss,不是push/pop。
最佳答案
这可以通过让第一个黑色 View Controller 呈现第二个橙色 View Controller 然后橙色 View Controller 呈现第三个白色 View Controller 来实现。
但这会出现一个问题:最终用户会清楚地注意到有两个 View Controller 已按顺序显示。为了解决这个问题,您需要做一个非常简单的技巧,即从第一个 View Controller 获取屏幕截图并将其传递给第二个 View Controller 以在呈现第三个 View Controller 时显示它。
可以查看this repository看看它究竟是如何完成的(Swift 3)。
最终输出为:
关于ios - 如何同时呈现两个 View Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43741197/