[ IOS, Swift ]UINavigation Controller

Content View Controller

화면을 구성하는 뷰를 직접 구현하고 관련된 이벤트를 처리하는 뷰 컨트롤러 입니다.

Container View Controller

  1. 하나 이상의 Child View Controller 를 가지고있다.
  2. 하나 이상의 Child View Controller 를 관리하고 레이아웃과 화면 전환을 담당한다.
  3. 화면 구성과 이벤트 관리는 Child View Controller 에서 한다.
  4. Container View Controller 는 대표적으로 Navigation Controller 와 TabBar Controller가 있다.

Navigation View Controller

  • 다음 View 를 선택하면 이전의 View 는 가려지게 됨
  • 뒤로가기를 선택하면 이전의 View 가 보여짐
  • Navigation Stack 을 통해서 자식 View Controller를 관리
  • 첫 번째 View Controller : root Controller
  • 배열의 마지막 Controller : Stack 의 최상단 컨트롤러

💡개발자는 Segue or UiNavigation Controller Method 를 사용해서 스택으로 부터 뷰 컨트롤러를 추가하고 제거할 수 있음

  • 사용자는 Back Button을 활용해서 최상단 View Controller를 제거할 수 있음
  • Swipe Gesture (Left로 화면을 쓰는 동작)으로도 제거할 수 있음

  • A 화면 : Root View Controller
  • B 화면 : Child View Controller (push)

  • C 화면 : Child View Controller (push)

  • C 화면 POP() → 이전 스택으로 이동

Navigation Bar

  • Navigation Controller 로 구현 시 화면 상단에 항상 보여지는 View
  • Root View Controller 이외에 모든 View Controller에 Back Button이 있어서 유저가 계층 구조에서 뒤로가기가 가능하게 함