2017-04-25 84 views
0

假设我们有3个视图控制器:ABCA是根视图控制器,其已呈现B,而B又呈现为C。我们如何执行从CA的自定义展开顺序,但不会显示B自定义Uistoryboard请求展开多个视图控制器

A - B - C 

UIStoryboardSegue在(在我们的例子B)之间关于视图控制器到其源视图控制器的引用以及它的目的地视图控制器,但什么?我们可以在C上执行任何我们想要的动画,但我无法以任何方式看到我们如何影响B

的目标是简单的,同时具有A从左侧进来,所以源和目的被水平地滑动彼此相邻的所有但根(BC)驳回的权利。 B在动画的任何点都不可见。

我的例子只关闭了两个视图,但我希望找到一个适用于任意数量视图的解决方案。此外,我不想使用UINavigationController来解决这个问题。我试图简单地解雇B,这确实也会解雇C,但在动画期间仍然可以看到BC

+0

你可以看看开卷塞格斯。以下是示例[iOS Storyboard中的展开段落](https://spin.atomicobject.com/2014/10/25/ios-unwind-segues/)。 – aNa12

+0

问题是关于放松赛段。 –

+0

那么,你有没有像在这个例子中那样去做呢? – aNa12

回答

0

您可以dissmiss控制器如下:

self.presentingViewController?.presentingViewController?.dismiss(animated: true, completion: nil) // you need to track viewcontroller's stack hierarchy 
+0

我似乎无法执行自定义解雇动画,而无需透露中间视图如该问题最后一句所述的动画。 –

+0

你先试了吗? – KKRocks

+0

同样,如问题所述:“我尝试了简单地解雇B,它确实也解雇了C,但在我的项目中动画” –

相关问题