我正在介绍一个模态视图 Controller ,该 Controller 的背景带有UIVisualEffectViewUIBlurEffect类型的.light
我正在介绍模态视图 Controller ,如下所示:

infoViewController.modalPresentationStyle = .overFullScreen
infoViewController.modalTransitionStyle = .crossDissolve
self.present(infoViewController, animated: true, completion: nil)

我注意到crossDissolve动画完成之前,不会出现模糊效果 View 。
其他过渡样式(例如coverVertical)则不是这种情况。

这仅在带有Swift 3的iOS 10上发生。

如何使crossDissolve动画与infoViewController上的视觉效果 View 一起使用。有什么建议/解决方法吗?

最佳答案

我要做的是将crossDisolve替换为CATransition,如下所示:

self.present(controller,
             animated: false,
             completion: nil)

let transition = CATransition()
transition.duration = 0.3
transition.type = kCATransitionFade
view.window?.layer.add(transition, forKey: nil)

希望能帮助到你。

10-08 05:53