毛玻璃

本文介绍了如何在iOS应用中实现UIToolBar的添加与UIVisualEffectView的各种视觉效果,包括不同风格的模糊效果,并提供了具体的代码示例。

1.UIToolBar

UIImageView *imageView =[[UIImageView alloc]initWithImage:[UIImage imageNamed:@"register_bg.jpeg"]];
imageView.frame =self.view.frame;
[self.view addSubview:imageView];   
UIToolbar *toolbar = [[UIToolbar alloc]initWithFrame:CGRectMake(0,0, imageView.frame.size.width/2, imageView.frame.size.height)];
toolbar.barStyle   = UIBarStyleBlackOpaque;
[imageView addSubview:toolbar];

2.UIVisualEffectView

iOS8.0之后,苹果新增了一个类UIVisualEffectView,可以快速实现毛玻璃效果

2.1、UIBlurEffect: 创建模糊效果,也就是毛玻璃效果的类,可以设置风格。

2.2、UIVibrancyEffect: 作用是放大和调整UIVisualEffectView内容视图的内容的颜色,让UIVisualEffectView的contentView中的内容看起来更加生动

2.3、UIVisualEffect: 没有任何方法,只是充当一个帮助UIVisualEffectView创建的对象,是UIBlurEffect和UIVibrancyEffect的父类

2.4、UIVisualEffectView:展示复杂的图像效果。

通常UIVibrancyEffect对象是与UIBlurEffect一起使用,主要用于处理在UIBlurEffect特效上的一些显示效果

2.5不要直接添加子视图到UIVisualEffectView视图中,而是应该添加到UIVisualEffectView对象的contentView中

2.6尽量避免将UIVisualEffectView对象的alpha值设置为小于1.0的值,因为创建半透明的视图会导致系统在离屏渲染时去对UIVisualEffectView对象及所有的相关的子视图做混合操作。这不但消耗CPU/GPU,也可能会导致许多效果显示不正确或者根本不显示

UIImageView *imageView =[[UIImageView alloc]initWithImage:[UIImage imageNamed:@"register_bg.jpeg"]];
imageView.frame =self.view.frame;
[self.view addSubview:imageView];
    
//iOS 8.0
* * 模糊效果的三种风格
  *
  *  @param UIBlurEffectStyle
  *
  * UIBlurEffectStyleExtraLight,  //高亮
  * UIBlurEffectStyleLight,       //亮
  * UIBlurEffectStyleDark         //暗
* *
UIBlurEffect *blurEffect =[UIBlurEffect effectWithStyle:UIBlurEffectStyleDark];
UIVisualEffectView *effectView =[[UIVisualEffectView alloc]initWithEffect:blurEffect];
effectView.frame = CGRectMake(imageView.frame.size.width/2,0, 
imageView.frame.size.width/2, imageView.frame.size.height);
[self.view addSubview:effectView];

 

 

 

 

 

转载于:https://my.oschina.net/u/3166681/blog/1555840

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值