一个简易模糊视图类的封装,可做出模糊图片效果

来源:互联网 发布:windows怎么装mac系统 编辑:程序博客网 时间:2024/06/14 05:30

基本思路如下:

1.创建一个继承自UIImageVIew的类,自定义初始化方法

2.内部使用UIVisualEffectView来添加模糊效果,控制模糊程度

3.可以通过枚举值控制模糊效果,用透明度alpha来控制模糊程度

 UIBlurEffectStyleExtraLight,

    UIBlurEffectStyleLight,

    UIBlurEffectStyleDark

4.关键的一点:要打开UIImageView的用户交互否则该模糊视图可能会影响其他控件的用户交互

使用方法大家一看便知,不再赘述

- (instancetype)initWithFrame:(CGRect)frame

{

    self = [superinitWithFrame:frame];

    if (self) {

        self.userInteractionEnabled =YES;

        //设置图片

        self.image = [UIImageimageNamed:@"blur.jpg"];

        //创建模糊视图

        UIVisualEffectView *backVisual = [[UIVisualEffectViewalloc]initWithEffect:[UIBlurEffecteffectWithStyle: UIBlurEffectStyleDark]];

        //将模糊视图的大小等同于自身

        backVisual.frame = self.bounds;

        //设置模糊视图的透明度

        backVisual.alpha = 1;

        [self addSubview:backVisual];


    }

    return self;

}


9 0
原创粉丝点击