放置在白色背景上时,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“消失”的主要内容,如果未能解决你的问题,请参考以下文章

放置在白色背景下时,UIVisualEffectView'消失'

将鼠标悬停在 li 上时如何更改所有字体颜色

在 Flash 中去除图像上的白色背景

CSS如何在悬停时从白色过渡到背景

在任何背景上突出显示图像(悬停时)

UITableView顶部的白色背景[重复]