我的故事板中有一个 UINavigationController 设置,并且我制作了一个自定义 segue 类,您可以在下面看到它在我的视图之间很好地淡入淡出(而不是沼泽标准推送)。
但是,当我点击导航控制器给我的那个返回按钮时,我得到了一个我不想要的推送动画,我想使用那个淡入淡出!我也不想让我的故事板中的segues双向进行,因为它会变得混乱。
自定义淡入淡出:
-(void)perform
{
__block UIViewController *sourceViewController = (UIViewController*)[self sourceViewController];
__block UIViewController *destinationController = (UIViewController*)[self destinationViewController];
[UIView transitionWithView:sourceViewController.navigationController.view duration:1.0 options:UIViewAnimationOptionTransitionCrossDissolve
animations:^
{
[sourceViewController.navigationController pushViewController:destinationController animated:NO];
}
completion:^(BOOL finished)
{
NSLog(@"Transition Completed");
}];
}
编辑
也许我应该简化。如何在 UINavigationController 中的两个视图控制器之间进行交叉溶解淡入淡出,它推送和弹出视图而不是标准的左右侧边动画?