我想要透明的 UIView 但不是我在其上添加的元素
I want transparent UIView but not the elements which I added over it
首先对标题感到抱歉。我不知道如何准确地表达我的问题。所以我的问题是,我在 UIView 的背景中设置了黑色,并使其透明。但是我在其上添加的 UI 元素(例如按钮、标签等)也随着 UIView 一起逐渐消失。例如,如果我将 UIView 的 alpha 设置为 0.5,那么它会自动应用于我在 UIView 上添加的所有我不想要的控件。所以请告诉我如何避免元素褪色。
您可以使用类似的东西:
view.backgroundColor=[[UIColor alloc] initWithRed:0 green:0 blue:0 alpha:0.5];
这将只对背景而不是子视图保持透明度。
您需要做的是,不要更改 UIView
的 alpha
,而是将 backgroundColor
设置为所需的透明度,例如如果你想要半透明的黑色,做view.backgroundColor = [UIColor colorWithWhite:0. alpha:.5];
祝你好运!
如果您只需要使 view
透明而不是 subviews
,那么请使用
self.view.backgroundColor=[UIColor clearColor];
它的作用是,它会使背景 view
透明,而不是设置 alpha 属性 也会淡化 subviews
。
而不是写代码。我们也可以在 Interface Builder 中设置它。通过 select 在 IB 的属性检查器中设置背景颜色,您必须单击背景颜色 属性 和 select 其他,然后您可以直接设置 alpha 或任何您想要的颜色减少代码。
@拉胡尔
首先对标题感到抱歉。我不知道如何准确地表达我的问题。所以我的问题是,我在 UIView 的背景中设置了黑色,并使其透明。但是我在其上添加的 UI 元素(例如按钮、标签等)也随着 UIView 一起逐渐消失。例如,如果我将 UIView 的 alpha 设置为 0.5,那么它会自动应用于我在 UIView 上添加的所有我不想要的控件。所以请告诉我如何避免元素褪色。
您可以使用类似的东西:
view.backgroundColor=[[UIColor alloc] initWithRed:0 green:0 blue:0 alpha:0.5];
这将只对背景而不是子视图保持透明度。
您需要做的是,不要更改 UIView
的 alpha
,而是将 backgroundColor
设置为所需的透明度,例如如果你想要半透明的黑色,做view.backgroundColor = [UIColor colorWithWhite:0. alpha:.5];
祝你好运!
如果您只需要使 view
透明而不是 subviews
,那么请使用
self.view.backgroundColor=[UIColor clearColor];
它的作用是,它会使背景 view
透明,而不是设置 alpha 属性 也会淡化 subviews
。
而不是写代码。我们也可以在 Interface Builder 中设置它。通过 select 在 IB 的属性检查器中设置背景颜色,您必须单击背景颜色 属性 和 select 其他,然后您可以直接设置 alpha 或任何您想要的颜色减少代码。
@拉胡尔