UIVisualEffectView毛玻璃效果

App设计时往往会用到一些模糊效果或者毛玻璃效果

//    UIBlurEffectStyleExtraLight,

//    UIBlurEffectStyleLight,

//    UIBlurEffectStyleDark

//    第一个UIBlurEffect是用来进行设置毛玻璃的效果

    UIBlurEffect *blur = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight];

//  第二个类是毛玻璃的视图

    UIVisualEffectView *vis = [[UIVisualEffectView alloc] initWithEffect:blur];

    /*注:尽量避免将UIVisualEffectView对象的alpha值设置为小于1.0的值,

     因为创建半透明的视图会导致系统在离屏渲染时去对UIVisualEffectView对象

     及所有的相关的子视图做混合操作。这不但消耗CPU/GPU,也可能会导致许多效果

     显示不正确或者根本不显示。*/

//    尽量给毛玻璃设置透明度

    vis.alpha = 0.9;

    vis.frame = CGRectMake(0, 0, self.icon.bounds.size.width, self.icon.bounds.size.height);

    self.vis = vis;

    [self.icon addSubview:vis];

原文地址:https://www.cnblogs.com/gxd0513/p/5783701.html