如何将子图层置于另一层上?

时间:2017-06-13 14:28:57

标签: ios calayer cashapelayer quartz-core ios-animations

我在CAShapeLayer()上画了一些东西。现在我想把它放在另一层。

let layer = CAShapeLayer() // This is the layer I drew something on 
let imageView = UIImageView() //  The imageView I want to put the layer on 
imageView.layer.addSublayer(layer)

那么如何将图层的中心与图像视图的中心对齐? 感谢。

2 个答案:

答案 0 :(得分:0)

layer.frame = imageView.bounds

答案 1 :(得分:0)

layer.frame = imageView.bounds  

没关系。

要将子图层置于花药图层中心,您还可以检查anchorPointZ。

图层沿z轴的位置的锚点。

默认值是将图层的中心与图像视图的中心对齐

如果你需要UIImageView图层调整其视图大小。你需要创建一个自定义视图类,并覆盖layoutSublayersOfLayer

class CenterImageView: UIImageView {

    override func layoutSublayersOfLayer(layer: CALayer!) {
         super.layoutSublayersOfLayer(layer)
         layer.frame = self.bounds
    }
 }