您的位置:首页 > 移动开发 > IOS开发

iOS开发——毛玻璃透明

2016-05-23 17:50 316 查看
主要实现的代码如下:

self.rateInfoView是定义好的控制属性控件

可以改变透明度的值来改变毛玻璃透明的效果


// 虚拟交易费率弹窗
- (void)showRateInfo{

self.rateInfoView = [[UIView alloc]initWithFrame:self.windowView.frame];
// rateInfoView.backgroundColor = [UIColor blackColor];
self.rateInfoView.alpha = 0.f;
[self.view addSubview:self.rateInfoView];

// 创建需要的毛玻璃特效类型

UIBlurEffect *blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleDark];

// 毛玻璃view 视图

UIVisualEffectView *effectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect];

//添加到要有毛玻璃特效的控件中

effectView.frame = self.windowView.frame;

[self.rateInfoView addSubview:effectView];

//设置模糊透明度

effectView.alpha = .8f;

UIImageView *rateImage = [[UIImageView alloc]initWithFrame:CGRectMake(Width*0.1, (Height-Width*0.8*1.11)/2+20, Width*0.8, Width*0.8/1.11)];
rateImage.image = [UIImage imageNamed:@"虚拟费率弹窗"];
[self.rateInfoView addSubview:rateImage];

UIButton *closeInfo = [UIButton buttonWithType:UIButtonTypeCustom];
closeInfo.frame = CGRectMake(Width*0.9-22-12, (Height-Width*0.8*1.11)/2+20+12, 22, 22);
[closeInfo setImage:[UIImage imageNamed:@"cancel"] forState:UIControlStateNormal];
[closeInfo addTarget:self action:@selector(closeRate) forControlEvents:UIControlEventTouchUpInside];
[self.rateInfoView addSubview:closeInfo];

[UIView animateWithDuration:0.2 animations:^{
self.rateInfoView.alpha = 1.0f;
}];

}

- (void)closeRate{

[self.rateInfoView removeFromSuperview];

}


效果图如下:



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: