CALayer

Horus-iOS·2022년 6월 19일
0

https://developer.apple.com/documentation/quartzcore/calayer

An object that manages image-based content and allows you to perform animations on that content.

이미지 기반 컨텐트를 관리하고, 해당 컨텐트에 애니메이션 수행을 가능하게 해주는 객체입니다.

Declaration

class CALayer : NSObject

Overview

레이어는 보통 뷰에 대한 백업 저장소를 제공하기 위해 사용되면서도, 컨텐트 표시를 위한 뷰 없이도 사용될 수 있습니다. 레이어의 주요 역할은 제공한 시각적 컨텐트를 관리하는 것이며, 레이어 자체가 배경 색상, 경계, 그림자와 같은 설정된 시각적 특성을 갖고 있기도 합니다. 시각적 컨텐트 관리와 더불어 레이어는 스크린에 나타나기 위해 사용되는 컨텐트(위치, 크기, 변형과 같은)의 기하학에 대한 정보 역시 유지합니다. 레이어의 속성을 수정하는 것은 레이어의 컨텐트 혹은 기하학에 애니메이션을 어떤 방법으로 초기화할지에 대한 방법임과 동일합니다. 레이어 객체는 레이어의 듀레이션과 페이싱(pacing)을 캡슐화하며, 레이어의 타이밍 정보를 정의하고 있는 CAMediaTiming 프로토콜을 채택함으로써 애니메이션 역시 캡슐화합니다.

레이어 객체가 뷰에 의해 생성되었다면, 뷰는 자동으로 스스로에게 레이어의 딜리게이트로 자신을 할당합니다. 이 관계를 변경시키지 않아야 합니다. 직접 레이어를 생성하는 경우 딜리게이트 객체를 할당할 수 있고, 레이어의 컨텐츠를 동적으로 제공하기 위해 해당 객체를 사용할 수 있습니다. 또한, 다른 작업 역시 수행하도록 할 수 있습니다. 레이어는 하위뷰 각각의 레이아웃을 관리하기 위해 레이아웃 매니저 객체(layoutManager 속성에 할당된) 또한 가질 것입니다.

0개의 댓글