在iOS10上,snapshotView在完全呈现视图之前拍摄快照

前端之家收集整理的这篇文章主要介绍了在iOS10上,snapshotView在完全呈现视图之前拍摄快照前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我完全透明的桌子和导航控制器.因此,在推送新视图控制器时,动画被破坏了.因此,我添加了自己的自定义推送转换,该转换获取下一个视图控制器的快照并为其设置动画.

这不再适用于iOS10. snapshotView(afterScreenUpdates:true)返回纯白色的视图.我也尝试通过图形上下文使用旧方法获取快照,但它也不起作用.

如何确保在snapshotView之前加载推送到导航控制器的视图?或者有更好的方法解决这个问题吗?不幸的是,这对我来说是一个突破性的变化.

解决方法

我想说这是严格的iPhone 7模拟器和iPhone 7模拟器问题.该问题不会出现在真实设备上.如果您需要为模拟器修复此问题,我可以在Pod: https://github.com/NewAmsterdamLabs/ZOZolaZoomTransition/中找到解决方法
- (UIImage *)zo_snapshot {
    UIGraphicsBeginImageContextWithOptions(self.bounds.size,self.opaque,[UIScreen mainScreen].scale);
    CGContextRef context = UIGraphicsGetCurrentContext();
    [self.layer renderInContext:context];
    UIImage *snapshot = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return snapshot;
}

猜你在找的iOS相关文章