放置在白色背景上时,UIVisualEffectView“消失”
Posted
技术标签:
【中文标题】放置在白色背景上时,UIVisualEffectView“消失”【英文标题】:UIVisualEffectView 'disappears' when placed against a white background 【发布时间】:2018-09-11 20:32:38 【问题描述】:我正在尝试重新创建一个类似于 App Store 故事页脚中使用的 UIVisualEffectView。虽然它看起来很简单,但我无法将模糊配置为在白色背景下以相同的方式响应。
开箱即用,带有.light
、.extraLight
、.prominent
或.default
blurEffect 的 UIVisualEffectView 在放置在白色背景之上时变得几乎不可见。我认为我在活力方面遗漏了一些明显的东西,但我已经调整了一段时间的值,但我无法正确地重新创建效果。
这就是我正在做的事情,以及它在完全白色背景下的样子。
let backgroundView = UIView(frame: CGRect(x: 0, y: 0, width: view.frame.width, height: 300))
backgroundView.backgroundColor = .white
view.addSubview(backgroundView)
let blurView = UIVisualEffectView(effect: UIBlurEffect(style: .extraLight))
blurView.frame = CGRect(x: 50, y: 50, width: 150, height: 150)
backgroundView.addSubview(blurView)
【问题讨论】:
【参考方案1】:您始终可以通过更改背景颜色来更改UIVisualEffectView
的基调。我猜你正在寻找类似的东西
blurView.backgroundColor = UIColor.lightGray.withAlphaComponent(0.7)
【讨论】:
我试过了!它肯定更接近他们在 App Store 中所做的事情,但并不完全相同。当视觉效果视图高于彩色内容时,可以看到差异。 @elfanek 我同意,但是您如何衡量差异?对我来说,使用UIColor.lightGray.withAlphaComponent(0.7)
的 blurView 看起来几乎相同,即使在彩色内容面前也是如此。 imgur.com/qvUALYD
滚动浏览各种内容时最容易看到差异。添加背景颜色时,模糊有点模糊。这是微妙的哈哈,但无论苹果做什么都绝对干净。我确信这与活力有关,但我找不到合适的配置以上是关于放置在白色背景上时,UIVisualEffectView“消失”的主要内容,如果未能解决你的问题,请参考以下文章