UIViewController - 切换显示的视图控制器没有闪存来呈现一个?

Tom*_*sen 6 objective-c uiviewcontroller ios segue

我有一个呈现视图控制器,呈现类似VC的模态,然后当用户完成该模态,我想转换到另一个模态,但调用:

// we are done.
[self.presentingViewController dismissViewControllerAnimated:NO completion:nil];

if (self.showOtherContoller)
{
    UIViewController* aVC = [[UIViewController alloc] initWithNibName:@"someNib" bundle:nil];
    [self.presentingViewController aVC animated:NO completion:nil];
}
Run Code Online (Sandbox Code Playgroud)

工作,但呈现基本视图控制器显示大约一秒钟,所以它看起来都很华丽.

基本上我想用一个视图控制器替换另一个视图控制器,而不是暂时放到显示视图控制器.

谢谢你的任何提示.

小智 4

您的模态转换样式是 CoverVertical。第一个模态在关闭时向下滑动,暴露其presentingViewController,然后第二个模态向上滑动,隐藏presentingViewController。

您想要更改过渡,以便第一个模态被第二个模态替换。

在关闭第一个视图控制器并呈现第二个视图控制器之前,将两个视图控制器的模态转换样式更改为 CrossDissolve。在关闭第二个模态之前,将其更改为 CoverVertical,以便它向下滑动以匹配第一个模态的向上滑动过渡。