我有一个相当复杂的UIImageView层次结构。最初,当一个UIImageView移到另一个兄弟之前时,我小心地交换了同级兄弟的顺序。然后我发现了关于myUIImageView.layer.zPosition的信息,并改用它。解决起来简单得多。它甚至几乎可以一直工作。我从this SO question中发现,zPosition仅在同级之间起作用。大!因此,我确实有两个问题:是否有关于此的实际文档?而且,我可以使用某种软糖来使它起作用吗? (例如,将我所有的UIImageViews添加到一个从不可见的UIView中)。提前谢谢。

最佳答案

从问题的标题开始,我想知道您是否理解zPosition属性适用于同级图层,而不适用于同级视图。要使用zPosition属性处理每张图像的深度,您需要将所有图像作为同一个图层放在同一个UIView对象中。 zPosition属性记录在Apple的Core Animation Programming Guide中:


  zPosition属性指定图层位置的z轴分量。 zPosition用于设置该图层相对于其同级图层的视觉位置。它不应用于指定图层同级的顺序,而应在子图层阵列中重新排列图层的顺序。

关于iphone - layer.zPosition不适用于非同级UIViews,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5466116/

10-10 20:53