UIView应该是透明的,但只显示白色

时间:2010-11-29 19:03:41

标签: iphone objective-c uiview uiviewcontroller transparency

我有UIViewController,其中包含标签和按钮。我希望视图的背景透明,因此我将其设置为clearColoropaque = NO

但是,视图始终显示白色背景。我怎样才能解决这个问题?

感谢。

2 个答案:

答案 0 :(得分:2)

一旦新的视图控制器被推到堆栈的顶部,它背后的任何内容都会被隐藏,因此你可以调整该视图的alpha设置,但它背后没有任何东西可以显示(所以你会看到白色)。

您需要使用UIView。我通常将UIView子类化并按照我想要的方式进行自定义,然后在需要使用时将其实例化并添加为子视图:

-(id)initWithFrame:(CGRect)frame
{    
    if (self = [super initWithFrame:CGRectZero])
    {
       // Add your label and button here...
    }
    return self;
}

答案 1 :(得分:0)

抱歉,我没有足够的代表评论Rog的答案,所以我会发布'另一个答案'。

尝试使用此代码,看看它是否适合您:

UIVIew *view = [[UIView alloc] init];
view.alpha = 0; // alpha 1.0 is opaque, alpha 0.5 is translucent and 0 is clear

老实说,我之前没有尝试过,因为我不需要这样做。但是当我从库中拖动一个新的UIView时,alpha选项就在属性中。

希望这有帮助。