提出堆视图控制器

时间:2016-02-22 22:34:09

标签: ios ios9

有没有办法一次呈现两个视图控制器?我的方案如下:

在我的根视图控制器(View 0)中,我想以模态方式显示视图(View 1),在解除该视图时,新视图(View 2)应位于其下方。

视图层次结构如下所示:

- View 1
- View 2
- View 0 (root)

我尝试在视图1的-viewDidAppear中没有动画地呈现它。但是,直到演示动画完成时才会调用它。并且在-viewDidAppear之前显示它不会起作用,因为视图还没有出现在窗口层次结构中。

有没有可行的方法呢?

1 个答案:

答案 0 :(得分:1)

在没有稳定性问题的情况下,提出UIViewController而另一个UIViewController呈现是不可能的。作为一个用户体验问题,我认为这种方法也不是最好的。他们应该知道在解雇视图控制器时会发生什么。

如果您没有使用presentViewController:并且UINavigationController没有坚持,那么该类的实例会有一个方法setViewControllers:animated:,允许您将两个UIViewControllers推到一堆。用户可以看到他们回去时得到的东西(后面的项目)。

否则,您可以在VC上出现,并立即成功呈现另一个。这是做你想做的最安全的选择。