ios为背景视图添加颜色alpha

时间:2014-08-14 12:58:28

标签: ios uiview

我已经在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]];
}

1 个答案:

答案 0 :(得分:0)

一些视图对象(即图像)未被灰色区域覆盖的最可能原因是视图层次结构(想想photoshop中的图层)在灰色区域视图上方具有这些对象。您应该将灰色区域视图置于层次结构的前面,然后立即将弹出视图置于层次结构的前面。这将确保层次结构上的所有其他视图都位于它们之下,因此将在所有其他视图上绘制。

我相信有一种方法可以称之为“带来子视图”前景'。这是一个可以帮助您入门的代码段:

    UIView* aview = [UIView new];
    [aview.superview bringSubviewToFront:aview];