调整Swift中UIVisualEffectView内的模糊效果强度

时间:2014-12-07 18:34:33

标签: swift gaussian blurry uiblureffect uivisualeffectview

我使用此代码在视图中创建模糊效果:

let blur = UIVisualEffectView(effect: UIBlurEffect(style: UIBlurEffectStyle.Light))
blur.frame = CGRectMake(180, 10, 200, 750)
myView.addSubview(blur)

有没有办法调整高斯函数产生模糊,以达到不同程度的焦点"实现

2 个答案:

答案 0 :(得分:2)

实际UIBlurEffect的半径无法更改,但有一种解决方法。

更改alpha的{​​{1}}组件会产生细微的模糊效果。

UIVisualEffectView

Swift 3

let blur = UIVisualEffectView(effect: UIBlurEffect(style: UIBlurEffectStyle.Light))
blur.frame = CGRectMake(180, 10, 200, 750)
blur.alpha = 0.4
myView.addSubview(blur)

答案 1 :(得分:1)

由于UIBlurEffect中没有其他参数,我认为唯一的方法是使用CIFilter预设CIGaussianBlur来模糊背景视图并使用其键inputRadius来调整关卡。
如果您希望获得与所谓的light / dark / ExtraLight相同的效果,则可以使用其他过滤器组合此过滤器。