我没有明确设置我的子图层的不透明度 - 仅通过opacity
属性设置超级图层。虽然超级层的不透明度确实如预期的那样发生变化,但我的子层的不透明度似乎也会发生变化,从而导致在超级层中的子层下面的元素被暴露。为什么会发生这种情况?
答案 0 :(得分:5)
为什么这让你感到惊讶?你期望发生什么?如果您不想这样做,请不要将这些子图层放在该超级图层中。只需将它们置于其上(可能在一个单独的超级层中)。
你想要它做的是超级图层中的所有合成,然后应用不透明度,然后将结果与其他所有内容重新合成。这称为光栅化;这基本上意味着“在你把我与其他任何东西合成之前,请把我变成一个位图。”您可以在超级图层上设置shouldRasterize
来申请。