iOS开发——毛玻璃(高斯模糊、半透明蒙版)效果实现方式

需求

蒙版遮盖住现在的视图,并有毛玻璃(高斯模糊)效果,如图所示

iOS开发——毛玻璃(高斯模糊、半透明蒙版)效果实现方式_第1张图片
高斯模糊.gif

实现方式

方法一:原生

代码如下

        /** style参数,蒙版的效果,可选:
         *  UIBlurEffectStyleExtraLight,
         *  UIBlurEffectStyleLight,
         *  UIBlurEffectStyleDark,
         *  UIBlurEffectStyleExtraDark   ios10之后
         *  UIBlurEffectStyleRegular     ios10之后
         *  UIBlurEffectStyleProminent   ios10之后
         */
        UIBlurEffect *blur = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight];
        UIVisualEffectView *HUDView = [[UIVisualEffectView alloc] initWithEffect:blur];
        HUDView.alpha = 0.9f;
        HUDView.frame = CGRectMake(0, 0, YYScreenW, YYScreenH);
        [self.view addSubview:HUDView];

效果图


iOS开发——毛玻璃(高斯模糊、半透明蒙版)效果实现方式_第2张图片
原生效果图

的确有一定的虚化效果,但不明显

方法二:DRNRealTimeBlurView框架(推荐使用)

要实现上面的需求,推荐使用DRNRealTimeBlurView框架,使用简单,模糊效果好看,框架下载地址https://github.com/CoderJee/DRNRealTimeBlurView
解压后需要里面的.h和.m文件共四个

iOS开发——毛玻璃(高斯模糊、半透明蒙版)效果实现方式_第3张图片
071102.png

代码:

//引头文件
#import "DRNRealTimeBlurView.h"

        DRNRealTimeBlurView *blurView = [[DRNRealTimeBlurView alloc] initWithFrame:CGRectMake(0, 0, YYScreenW, YYScreenH)];
        [backImgView addSubview:blurView];
//backImgView是UIImageView,是页面背景
//什么控件需要做模糊效果,就往什么控件上加,非常简单

效果图


iOS开发——毛玻璃(高斯模糊、半透明蒙版)效果实现方式_第4张图片
框架效果图

你可能感兴趣的:(iOS开发——毛玻璃(高斯模糊、半透明蒙版)效果实现方式)