iOS,iOS9+ 提供原生模糊视图效果?

iOS, native blur view effects available from iOS9+?

我正在尝试显示一个视图/弹出窗口(一个对话框),但是我需要背景模糊效果并支持 iOS 9+。

它们是否在支持旋转的 UIKit 中原生提供了模糊操作?

我担心模糊效果会影响屏幕截图,一旦我显示了我的对话框并且屏幕旋转,将无法向屏幕截图图像添加模糊效果。

或许还有其他选择。

UIKI 它有一个 UIVisualEffectView 来添加漂亮的模糊效果

  • 从对象库中拖出一个 UIVisualEffectView 并将其放在需要为您的案例(背景)模糊的视图上

声明这些属性

@IBOutlet var popupView: UIView!
@IBOutlet weak var visualEffectView: UIVisualEffectView!
var blurEffect:UIVisualEffect!

在 viewDidLoad 中放入此代码

    blurEffect = visualEffectView.effect
    visualEffectView.effect = nil

显示带有模糊效果的 view/popup(对话框)

func presentPopUp() {
    self.view.addSubview(popupView)
    UIView.animate(withDuration: 0.4) {
        self.visualEffectView.effect = self.blurEffect
       //make tarnsform from  popupView make it show more beauty
    }
}

隐藏 view/popup(对话框)并模糊处理

func dismissPopUp () {
    UIView.animate(withDuration: 0.3, animations: {
        self.visualEffectView.effect = nil
        //make tarnsform from  popupView make it hide more beauty
    }) { (success:Bool) in
        //  dismissPopUp remove it from super View
    }
}