我在 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)
那么如何将图层的中心与图像视图的中心对齐呢?谢谢。
我在 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)
那么如何将图层的中心与图像视图的中心对齐呢?谢谢。
layer.frame = imageView.bounds
没关系。
要将子图层居中在另一个图层上,您还可以检查anchorPointZ。
图层沿 z 轴的位置的锚点。
默认值是将图层的中心与图像视图的中心对齐
如果您需要 UIImageView 的图层随其视图调整大小。您需要创建一个自定义视图类,并覆盖 layoutSublayersOfLayer
class CenterImageView: UIImageView {
override func layoutSublayersOfLayer(layer: CALayer!) {
super.layoutSublayersOfLayer(layer)
layer.frame = self.bounds
}
}
layer.frame = imageView.bounds