CATransformLayer objects are used to create true 3D layer hierarchies, rather than the flattened hierarchy rendering model used by other
- iOS 3.0+
- macOS 10.6+
- tvOS 9.0+
Unlike normal layers, transform layers do not flatten their sublayers into the plane at
Z=0. Due to this, they do not support many of the features of the
CALayer class compositing model:
Only the sublayers of a transform layer are rendered. The
CALayerproperties that are rendered by a layer are ignored, including:
contents, border style properties, stroke style properties, etc.
The properties that assume 2D image processing are also ignored, including:
masksToBounds, and shadow style properties.
opacityproperty is applied to each sublayer individually, the transform layer does not form a compositing group.
hitTest:method should never be called on a transform layer as they do not have a 2D coordinate space into which the point can be mapped.