【问题标题】:How do I correctly blur a UIView using a UIVisualEffectView?如何使用 UIVisualEffectView 正确模糊 UIView?
【发布时间】:2017-08-09 23:45:17
【问题描述】:

所以我有一个表单,当我单击一个按钮时会以模态方式呈现。这就是它的外观。


我想模糊您从上图中看到的灰色区域。我的初始设置是:我有一个 UIView,称为 backgroundView,我有另一个 UIView,称为 addIncomeFormView。 这是最初的故事板布局。 (我相信 addIncomeFormView 是 backgroundView 的孩子。)



在我的 Cocoa 文件中,我这样做了。

@IBOutlet var backgroundView: UIView! {
   didSet {
      backgroundView.backgroundColor = UIColor.black.withAlphaComponent(0.6)
      let blurEffect = UIBlurEffect(style: UIBlurEffectStyle.dark)
      let blurEffectView = UIVisualEffectView(effect: blurEffect)
      blurEffectView.frame = backgroundView.bounds
      blurEffectView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
      backgroundView.addSubview(blurEffectView)

    }
}



这样做的结果是,当我单击按钮时,我得到了这个。



如何使 addIncomeFormView (UIView) 不被模糊,或者换句话说,它位于模糊的 UIView 之上?

【问题讨论】:

    标签: iphone swift uiview blur


    【解决方案1】:

    尝试更改此行:backgroundView.addSubview(blurEffectView) 对此:backgroundView.insertSubview(blurEffectView, at: 0)

    【讨论】:

      【解决方案2】:

      添加模糊视图后尝试将其发送到后面

      backgroundView.sendSubviewToBack(blurEffectView)
      

      【讨论】:

        猜你喜欢
        • 2014-07-26
        • 2019-02-02
        • 1970-01-01
        • 2018-08-20
        • 1970-01-01
        • 2023-04-05
        • 1970-01-01
        • 2020-12-05
        • 1970-01-01
        相关资源
        最近更新 更多