从某种意义上说,我遇到了麻烦:
我创建一个UIView并将alpha值设置为0.5,然后添加一个alpha值为1的子视图,当我运行app时,子视图也变得透明,如何保持子视图不透明? / p>
谢谢!
答案 0 :(得分:5)
正如您所注意到的,在父视图上设置alpha也会影响所有子视图。我所做的就是保留alpha,并使用带有alpha的背景颜色作为父视图,使用不透明的背景颜色作为子视图。
例如,在某些随机视图控制器中:
UIView *transparentView = [[UIView alloc] initWithFrame:self.view.bounds];
transparentView.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.5];
UIView *opaqueView = [[UIView alloc] initWithFrame:CGRectMake(50, 50, 200, 200)];
opaqueView.backgroundColor = [UIColor whiteColor];
[transparentView addSubview:opaqueView];
[self.view addSubview:transparentView];