设置父视图透明度而不影响子视图

来源:互联网 发布:购物软件排行2016 编辑:程序博客网 时间:2024/05/04 16:46

有时,我们会遇到这样的需求:背景颜色模糊化,一般我们会设置背景图alpha

- (void)viewDidLoad {    [super viewDidLoad];    self.view.backgroundColor = [UIColor whiteColor];    self.view.alpha           = 0;    UIView *view              = [[UIView alloc] initWithFrame:CGRectMake(50, 50, 200, 200)];    view.backgroundColor      = [UIColor redColor];    [self.view addSubview:view];}

很容易,但如果像上面那样写,如果控件是独立的没什么区别,但如果上面加有子视图,就会把子视图也一并设置,这并不是我们想要的效果,那么我们可以通过下面来实现,一句代码,轻松实现

- (void)viewDidLoad {    [super viewDidLoad];    self.view.backgroundColor = [[UIColor whiteColor] colorWithAlphaComponent:0];    UIView *view              = [[UIView alloc] initWithFrame:CGRectMake(50, 50, 200, 200)];    view.backgroundColor      = [UIColor redColor];    [self.view addSubview:view];}
0 0
原创粉丝点击