执行一系列故事板细分

时间:2014-11-13 20:36:14

标签: ios objective-c uistoryboardsegue deep-linking

我有一个超过20个场景的故事板。我希望能够深入链接到其中一个场景。为了做到这一点,我想从我的初始视图控制器执行必要的segue。

所以说我有视图控制器A,B和C,其中segue如下所示。

->A --segue1--> B --segue2--> C

在不向B添加特殊代码的情况下,从A到C的最简单方法是什么?我需要从C到B的展开segue保持完整。我想出的唯一解决方案是在B中添加特殊逻辑,如果设置了标志,则在出现后执行segue2。这并不理想,因为我有一些使用情况,这个链更深。我宁愿在A中使用代码[A performSegues:[@"segue1", @"segue2"]]

有更好的方法吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用setViewControllers:animated:来构建您想要的所有视图控制器。如果从A开始,您可以制作导航控制器的viewControllers数组的可变副本,根据需要添加任意数量的其他视图控制器,然后将该数组传递给setViewControllers:animated:。如果将动画设置为YES,您将看到从A到数据库中最后一个控制器的单个推送。您仍然可以使用展开来返回任何控制器。

我不认为有任何好的方法可以用segues做到这一点,因为你会看到从一个控制器到下一个控制器的所有转换(除非你想要看到的)