我已经在iPad应用程序中添加了一个弹出式选择器,当它弹出时,我希望后面的视图添加lightGray
alpha,这样弹出窗口就会突出显示。我已经能够将颜色添加到整个背景UIView
,但是我在UIView
中有一些图像不受添加颜色的影响。有没有一种简单的方法可以将背景颜色添加到整个视图中,包括图像?
这是我的代码:
IBOutlet UIView *viewVersion; //this is the pop-up view
- (IBAction)openSelector:(UIButton *)sender {
viewVersion.hidden = NO;
[self.view setBackgroundColor:[[UIColor lightGrayColor] colorWithAlphaComponent:1.0]];
[viewVersion setBackgroundColor:[UIColor whiteColor]];
}
答案 0 :(得分:0)
一些视图对象(即图像)未被灰色区域覆盖的最可能原因是视图层次结构(想想photoshop中的图层)在灰色区域视图上方具有这些对象。您应该将灰色区域视图置于层次结构的前面,然后立即将弹出视图置于层次结构的前面。这将确保层次结构上的所有其他视图都位于它们之下,因此将在所有其他视图上绘制。
我相信有一种方法可以称之为“带来子视图”前景'。这是一个可以帮助您入门的代码段:
UIView* aview = [UIView new];
[aview.superview bringSubviewToFront:aview];