为什么添加子图层会重叠子视图?

rab*_*ace 20 ios

例如,我有一个UILabel作为子视图的视图.如果在某个时候我将具有一些背景颜色的子图层添加到此视图的图层,则此标签将消失.有人可以解释这种行为吗?

dan*_*dan 33

当您将UILabel添加为视图的子视图时,它会将您的UILabel图层添加为视图图层的子图层.因此,当您向视图的图层添加另一个子图层时,它将位于您的UILabel图层之上.

您可以在添加UILabel之前添加背景图层,也可以添加背景图层

view.layer.insertSublayer(backgroundLayer, below: yourLabel.layer)

它应该把背景放在标签后面.


den*_*lor 5

对我有用的是将图层插入到特定索引处,如下所示:

view.layer.insertSublayer(backgroundLayer, at: 0)

  • 您需要选择正确的视图来插入子图层,它就像魔术一样!谢谢 :) (3认同)