我正在使用此代码在我的视图中创建模糊效果:
let blur = UIVisualEffectView(effect: UIBlurEffect(style: UIBlurEffectStyle.Light))
blur.frame = CGRectMake(180, 10, 200, 750)
myView.addSubview(blur)
有什么方法可以调整产生模糊的高斯函数以实现不同程度的“失焦”效果?
我正在使用此代码在我的视图中创建模糊效果:
let blur = UIVisualEffectView(effect: UIBlurEffect(style: UIBlurEffectStyle.Light))
blur.frame = CGRectMake(180, 10, 200, 750)
myView.addSubview(blur)
有什么方法可以调整产生模糊的高斯函数以实现不同程度的“失焦”效果?
实际的半径UIBlurEffect
无法更改,但有一种解决方法。
更改 , 的alpha
组件UIVisualEffectView
将产生微妙的模糊效果。
let blur = UIVisualEffectView(effect: UIBlurEffect(style: UIBlurEffectStyle.Light))
blur.frame = CGRectMake(180, 10, 200, 750)
blur.alpha = 0.4
myView.addSubview(blur)
斯威夫特 3
let blurEffect = UIBlurEffect(style: UIBlurEffectStyle.extraLight)
let blurEffectView = UIVisualEffectView(effect: blurEffect)
blurEffectView.alpha = 0.4
blurEffectView.frame = self.bounds
self.addSubview(blurEffectView)
由于 中没有其他参数UIBlurEffect
,我认为唯一的方法是使用 CIFilter 预设CIGaussianBlur
对背景 View 进行模糊处理,并使用其键inputRadius
来调整级别。
如果你想达到所谓的light
//一样的效果dark
,ExtraLight
你可以把这个过滤器和其他过滤器组合起来。