iOS/iOS Swift 개발 일기

Navigation controller 관련

Developer-Michelle 2022. 5. 21. 09:45

라이브러리를 통해 네비게이션 컨트롤러를 추가하면 루트 뷰 컨트롤러도 함께 추가된다 (1+1 행사마냥)

 

Embed In 활용해서 Navigation controller 넣는 방법

Editor -> Embed In -> Navigation controller 

네비게이션 컨트롤러는 각 뷰 컨트롤러마다 내장된 내비게이션 바에 이전화면으로 되돌아갈 수 있는 버튼을 자동으로 만들어준다.

present(_:animated:)메소드를 이용해서 화면을 전환할 때 처럼 뒤로가기 버튼을 직접 만들어 줄 필요가 없다.

 

 

 

*

self.navigationController 객체에 pushViewController(_:animated:) 메소드를 호출하는 경우 -> 내비게이션 스택에서 뷰 컨트롤러를 제거하려면 popViewController(animated:) 메소드 호출해야 함

popViewController(animated:) = 내비게이션 컨트롤러에 의해 화면이 전환되었을 때 이전 화면으로 되돌아가는 메소드.

 

반면에 프레젠트 메소드로 화면을 전환했을 때는 -> dismiss(animated:)메소드 호출

 

present(_:animated:)메소드의 호출 대상: 뷰 컨트롤러 자신

pushViewController(_:animated:)메소드의 호출 대상: 내비게이션 컨트롤러(self.navigationController)