iOS/Interview Questions
[iOS] 앱 화면의 콘텐츠를 표시하는 로직과 관리를 담당하는 객체
hilily
2022. 10. 12. 23:37
반응형
UIViewController
- UIKit 앱의 뷰 계층 구조를 관리하는 객체
- 화면 하나를 관리하는 단위
- 모든 앱은 기본적으로 하나 이상의 뷰 컨트롤러를 가지고 있음
어떤역할?🤔
- 뷰의 계층을 관리하면서 데이터를 화면에 어떻게 뿌릴지 관리하는 매개체 역할!
- 뷰에 대한 리소스를 관리함 (이미지, 음성, 진동, 메모리와 같은 리소스)
- 화면 사이즈, 화면 회전에 대한 대응을 함
=> 요런 여러가지 기능을 하기 때문에 ViewController의 역할이 많아지면서 디자인패턴들 사용 (Model, View, ViewController)
뷰는 동작 화면에서는 Storyboard로 구성한 화면만 보이지만, 실제로는 사진과 같은 구조로 많은 층으로 쌓여있다.
UIWindowScene -> UIWindow -> UITransitionView -> UIDropshadowView -> ViewController
여기서 Window라는 틀에 ViewController 깔고 그 위에 구성한 뷰가 화면에 나타난다고 이해했다.
예를들어 어떤 그림을 사진으로 찍을 때 Window는 카메라 앵글, ViewController는 종이, UIView는 그림과 같은 느낌..?인것 같다!..!
참고
반응형