iOS 8 苹果开放了毛玻璃效果的控件UIBlurEffect和UIVisualEffectView
// 毛玻璃视图
UIBlurEffect *blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight];
UIVisualEffectView *effectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect];
effectView.frame = CGRectMake(0, 0, 375, 500);
[self.view addSubview:effectView];
系统提供的毛玻璃类型
UIBlurEffectStyleExtraLight,
UIBlurEffectStyleLight,
UIBlurEffectStyleDark
亮色和黑色,但是有时候这些样式并不能满足项目中UI的需求
问题:如何自定义自己想要的颜色?
当改变系统样式的时候,查看图层,发现一个_UIVisualEffectFilterView控件的背景颜色发生了改变。试着改变_UIVisualEffectFilterView的背景颜色。
for (UIView *view in effectView.subviews) {
if ([view isKindOfClass:NSClassFromString(@"_UIVisualEffectFilterView")]) {
view.backgroundColor = [UIColor colorWithRed:83/255.0 green:24/255.0 blue:79/255.0 alpha:0.8];
}
}
效果图
注意:颜色需要透明度,不然看不到下面的的图层。
===========================================
喜欢我就点我吧