毛玻璃效果-视觉特效 - (Obj-C)

设置视觉特效UIVisualEffectView是iOS 7开始加入的一项新功能,但是在iOS 8才开放API,目前功能相对比较简单,以实现两种特效:

  • 毛玻璃
  • 内容鲜活

这里通过UIVisualEffectView演示毛玻璃特效,相对滤镜的方法更加简单

示例代码:

- (void)viewDidLoad {
    [super viewDidLoad];

    [self setupBackgroundView];
}

// 设置背景图  毛玻璃效果
- (void)setupBackgroundView{
    
    /**  设置毛玻璃效果 设置视觉特效:iOS7开始出现但是没有开放 iOS8开放API
     
         UIBlurEffect:毛玻璃效果
         UIVibrancyEffect:内容鲜活(内容可以根据背景色进行变化)
     */
    UIBlurEffect *blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleDark];
    UIVisualEffectView *effectView = [[UIVisualEffectView alloc]initWithEffect:blurEffect];
    
    // 需要将视效视图添加到目标视图中(效果将会影响后面的内容分层视图或内容添加到视图的contentview视觉效果)
    [self.backgroundImageView addSubview:effectView];
    // 设置约束
    [effectView mas_makeConstraints:^(MASConstraintMaker *make) {
        make.edges.mas_equalTo(UIEdgeInsetsMake(0, 0, 0, 0));
    }];
}

如图,背景放置了一张和中心一样的ImageView,通过UIVisualEffectView实现毛玻璃效果:

毛玻璃效果-视觉特效 - (Obj-C)_第1张图片
屏幕快照 2016-07-19 下午10.43.02.png

你可能感兴趣的:(毛玻璃效果-视觉特效 - (Obj-C))