Слой (CALayer) — это объект, управляющий визуальным содержимым представления (UIView). Представления используют слои для отрисовки своего содержимого на экране. Слои не обрабатывают события касания, в отличие от представлений.
Основные функции слоев:
Основные свойства CALayer:
contents: Any? - Содержимое слоя, обычно CGImage.frame: CGRect - Положение и размер слоя относительно его superlayer.bounds: CGRect - Положение и размер слоя в его собственной системе координат.position: CGPoint - Центр слоя относительно его superlayer.anchorPoint: CGPoint - Точка слоя, вокруг которой происходят преобразования, в нормализованных координатах (от 0 до 1).backgroundColor: CGColor? - Цвет фона слоя.borderColor: CGColor? - Цвет границы слоя.borderWidth: CGFloat - Ширина границы слоя.cornerRadius: CGFloat - Радиус скругления углов.shadowColor: CGColor? - Цвет тени.shadowOpacity: Float - Непрозрачность тени (от 0 до 1).shadowOffset: CGSize - Смещение тени.shadowRadius: CGFloat - Радиус размытия тени.opacity: Float - Непрозрачность слоя.isHidden: Bool - Определяет, скрыт ли слой.transform: CATransform3D - Трехмерное преобразование слоя.Hierarchie слоев:
Слои образуют иерархию, аналогичную иерархии представлений. Каждый слой может иметь superlayer и массив sublayers.
Использование:
Представления (UIView) имеют свой основной слой (layer), через который можно получить доступ к его визуальным свойствам и выполнять анимации. Можно добавлять дополнительные слои к слою представления для создания более сложных визуальных эффектов.
Пример доступа к слою представления:
swift