화면을 전환하는 방법에 대해 적어보려고 한다 사실 강의만 듣는다고 완벽하게 이해 되는건 아니어서 다른 블로그들도 참조해서 적을려고 한다
Content View Controller
Container View Controller
Container View Controller 중에서도 Navigation controller를 사용해서 간단한 LED색상을 선택할 수 있는 어플을 만들거다
계층구조로 구성된 content를 순차적으로 보여주는 녀석임
간단하게 말하면 화면 -> 설정클릭 -> 설정 안에 또 다른 버튼 클릭
segue등으로 화면전환을 한다!!!
Navigation Stack은 화면이 스택에 쌓인다고 생각하면된다.
상위 카테고리에서 -> 하위카테고리로 들어간다
반대로 나올때는 하위카테고리 -> 상위카테고리 순으로 나온다!!
찐 스택이라는거!!
Navigation Bar
Navigation을 사용해서 화면을 구성하면 상단에 저거 무조건 나옴
Root View 제외하고 모든 child View에는 Preivious VC라는 저게 있다 그래서 왔다 갔다 가능
화면 전환 방식
자세히는 4개 방식이 있다
View Controller에서 다른 View Controller를 호출하여 전환하기
현재 view에서 이동할 대상의 view를 직접호출하여 표시하기!! -> 프레젠테이션 방식
원래 view에서 호출한 view를 덮는거다!!
present함수에 첫 번째 인자로는 이동할 화면의 View Controller 넘겨주기
두 번째 인자로는 flag 즉 애니메이션 효과를 사용해서 왔다갔다 할지
세 번째 인자로는 completion이고 클로저를 호출한다
이 안에 많은걸 넣어도 무방함
=> 화면 전환이 끝난 후에!!
오른쪽의 dismiss는 기존의 덮고 있던 view를 뺀다고 생각하면 됨
Navigation Controller를 사용하여 화면 전환하기
계층적인 성격을 띄고 있다
선입후출 방식이다 -> pushViewController 를 사용해서 스택처럼 쌓기
화면전환용 객체 세그웨이(Segueway)를 사용하여 화면 전환하기
스토리보드를 통해 출발지와 목적지를 직접 지정 가능!!
코드 사용 안해도 화면 전환이 가능하다
Action Segueway
출발점이 Button, 셀 등인 경우는 이걸 사용
Manual Segueway
출발점이 viewController 그 자체일때는 이 녀석
Action Segueway 종류
아이패드 메세지 앱인데 메세지 내용이 오른쪽에 나옴!!
오른쪽에 나오는게 슬레이브임! 즉 split ( 분할하다) 구조로 사용됨