728x90
Core Animation
- iOS에서 화면을 1초당 60프레임으로 렌더링해서 유지할 수 있도록 GPU에 직접 접근할 수 있게하는 OpenGL이 존재한다.
- 하지만 OpenGL은 매우 low하기 때문에 다루기가 매우 어렵다.
- OpenGL보다 간단하게 사용해서 그래픽을 다룰 수 있도록 만든 것이 CoreGraphics라는 프레임워크
- 하지만 Core Graphics또한 low한 편에 속하기 때문에 여기서 한 번 더 좀 더 high레벨의 프레임워크를 만든 것이 CoreAnimation이다.
- Core Animation에서 다룰 수 있는 기능 중 가장 자주, 쉽게 다룰 수 있는 것들을 모아 만든 것이 UIKit
- 따라서 그래픽 작업 시 UIKit레벨에서 할 수 없는 고급 그래픽 작업들을 하려면 CoreAnimation을 활용해야 한다.
CALayer
- 이미지 기반의 컨텐츠를 관리하고 해당 컨텐츠에서 애니메이션을 실행할 수 있게 해주는 object
- background color, border, corner, shadow 등의 visual attribute들을 관리해준다.
- UIView들은 하나의 main layer를 가지고 있고 해당 layer는 여러 개의 sublayer들을 추가적으로 가질 수 있다.
728x90
'iOS > 설명' 카테고리의 다른 글
[iOS] CALayer의 anchorPoint, position (0) | 2021.12.08 |
---|---|
[iOS] isBeingPresented, isBeingDismissed (0) | 2021.12.07 |
[iOS] Deeplinking, Universal link, Deferred deeplinking (0) | 2021.12.05 |
[iOS] UIActivityViewController 컨텐츠 공유 (0) | 2021.12.05 |
[iOS] Hugging priority, Compression Resistance priority (0) | 2021.10.15 |
댓글