13

我有一个视图控制器 B,它被根视图控制器 A 推送到导航堆栈上,如果该视图控制器 B 的模型处于某种状态,则该视图控制器 B 需要显示另一个视图,因此它以模态方式呈现另一个视图控制器 C。当我关闭时如果视图控制器 B 也在导航堆栈上,视图控制器 CI 也想弹出视图控制器 B。我想以只有 1 个过渡的方式进行。

有任何想法吗?

4

1 回答 1

20

在您发布的场景中,视图控制器 C 的呈现视图控制器实际上是导航控制器,因此您可以要求它弹出 B,然后关闭自己。此代码在视图控制器 C 中:

-(IBAction)goBackToA:(id)sender {
    [(UINavigationController *)self.presentingViewController  popViewControllerAnimated:NO];
    [self dismissViewControllerAnimated:YES completion:nil];
}

如果您正在使用情节提要,您可以执行相同的操作,通过展开转场直接跳回 A。

于 2013-05-01T02:32:33.630 回答