首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UIModalTransitionStyle CrossDissolve的UIVisualEffectView延迟

UIModalTransitionStyle CrossDissolve的UIVisualEffectView延迟
EN

Stack Overflow用户
提问于 2016-10-17 20:13:23
回答 2查看 1.2K关注 0票数 11

我展示的是一个模态视图控制器,它的背景是一个带有.light类型的UIBlurEffectUIVisualEffectView

我展示的模式视图控制器如下所示:

代码语言:javascript
复制
infoViewController.modalPresentationStyle = .overFullScreen
infoViewController.modalTransitionStyle = .crossDissolve
self.present(infoViewController, animated: true, completion: nil)

我注意到模糊效果视图直到crossDissolve动画完成才会出现。对于其他转换样式,例如coverVertical,情况并非如此。

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

如何让crossDissolve动画与infoViewController上的视觉效果视图一起工作。有什么建议/变通方法吗?

EN

回答 2

Stack Overflow用户

发布于 2016-11-08 23:22:03

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

代码语言:javascript
复制
self.present(controller,
             animated: false,
             completion: nil)

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

希望能有所帮助。

票数 5
EN

Stack Overflow用户

发布于 2017-02-07 16:15:11

去查查你的领事,你应该会看到原因-

<_UIPopoverBackgroundVisualEffectView 0x7fe053562840>被要求对其不透明度进行动画处理。这将导致效果显示为断开,直到不透明度恢复为1。

您不能在crossDissolve动画中使用UIVisualEffectView ...

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40086097

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档