子视图的 alpha 比 parent 高?

Subview has higher alpha then parent?

我正在 Xcode 6.1.1 中使用 objective-c 进行编程。

我有两个 UIViewcontroller(一个 parent 和一个 child)。 parent 的 alpha 值为 0.7。 我想要的是具有比 parent 更高 alpha 的 child。我想让 child 的 alpha 为 1.0.

我搜索了这个主题,找到了这个:change alpha of a child view without changing alpha of parent view

这是一个旧的,根本不能用。

问题:如何使 child 的 alpha 高于 parent viewcontroller?

您不能使子视图的 alpha 看起来比其父视图更高(透明度较低)。

子视图的有效 alpha 由其自身的 alpha 乘以其父视图的 alpha 确定。

你能做的是将两个视图放入一个公共容器视图中。使容器视图具有清晰的背景色。然后这两个视图可以各自有自己的alpha。

任何视图的有效 alpha 是其自身的 alpha 值乘以其父视图的 alpha 值。

因此,如果您有一个 alpha 为 0.6 的视图和一个 alpha 为 1.0 的子视图,那么该子视图的 alpha 也会显示为 0.6。

如果子视图的 alpha 为 0.5,那么它将显示为 0.3。