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

时间:2015-02-27 12:53:01

标签: ios

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

2 个答案:

答案 0 :(得分:27)

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

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

[view.layer insertSublayer:backgroundLayer below:yourLabel.layer]

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

答案 1 :(得分:0)

对我有用的是在这样的特定索引处插入图层:

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