UINavigationController 自定义过渡动画视图控制器 alpha 值

Posted

技术标签:

【中文标题】UINavigationController 自定义过渡动画视图控制器 alpha 值【英文标题】:UINavigationController custom transition animation view controller alpha value 【发布时间】:2016-07-23 10:43:59 【问题描述】:

我想做一个过渡,最后,ToViewController alpha 值将是 0.7 左右,所以用户仍然可以在后台看到 FromViewController"。

我为什么要这样做?因为在过渡结束时我需要删除FromViewController

【问题讨论】:

【参考方案1】:

一种简单的方法是在运行时拍摄视图控制器的快照,并使用传递的快照图像导航您想要的控制器,并将其设置为 ToView 控制器的背景图像,因此您看起来就像在同一页面上。

-(UIImage *)takeSnapshot:(UIView *)snapView 

    UIGraphicsBeginImageContextWithOptions(snapView.frame.size, NO, [UIScreen mainScreen].scale);

    [snapView drawViewHierarchyInRect:snapView.bounds afterScreenUpdates:NO];

    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return image;

【讨论】:

看起来是一个不错的解决方案,但我很确定有更简单优雅的解决方案。我看到了一个教程,但找不到了。 @RohitJha 使用四个制表符来缩进代码。请阅读tour 并回答。欢迎使用 Stack Overflow。

以上是关于UINavigationController 自定义过渡动画视图控制器 alpha 值的主要内容,如果未能解决你的问题,请参考以下文章

关闭 UINavigationController 并呈现另一个 UINavigationController

iOS:如何在现有 UINavigationController 中打开另一个 UINavigationController?

带有主 UINavigationController 和详细 UINavigationController 的 UISplitViewcontroller

带有 UINavigationController 的 UITabBarController,在 hidesBottomBarWhenPushed 上隐藏 UINavigationController

在 UINavigationController 内的 UITabBarcontroller 中添加 UINavigationController?

UINavigationController 与 AppDelegate 中的 UISegmentedControl 切换 UINavigationController 的 rootviewcontr