Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 如何使用UIVisualEffectView正确模糊UIView?_Iphone_Swift_Uiview_Blur - Fatal编程技术网

Iphone 如何使用UIVisualEffectView正确模糊UIView?

Iphone 如何使用UIVisualEffectView正确模糊UIView?,iphone,swift,uiview,blur,Iphone,Swift,Uiview,Blur,所以我有一个表单,当我点击一个按钮时,它会以模式显示。这就是它的样子。 我想模糊上面图片中的灰色区域。我的初始设置是:我有一个名为backgroundView的UIView,还有一个名为addIncomeFormView的UIView。 这是最初的故事板布局。(我相信addIncomeFormView是backgroundView的产物。) 在我的Cocoa文件中,我这样做了 @IBOutlet var backgroundView: UIView! { didSet {

所以我有一个表单,当我点击一个按钮时,它会以模式显示。这就是它的样子。


我想模糊上面图片中的灰色区域。我的初始设置是:我有一个名为backgroundView的UIView,还有一个名为addIncomeFormView的UIView。 这是最初的故事板布局。(我相信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之上?

尝试更改此行:
背景视图。addSubview(blurEffectView)

对此:
backgroundView.insertSubview(blurEffectView,at:0)

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

backgroundView.sendSubviewToBack(blurEffectView)