🍎 Swift/iOS 학습 노트

[Swift🍎] pushViewController, setViewControllers

솔비님 2024. 9. 25. 15:06

 

1.  pushViewController

현재 네비게이션 스택의 가장 위에 새로운 ViewController를 추가

화면 전환 시, 이전 ViewController는 네비게이션 스택에 남아 있어서 Back 버튼을 눌러 이전 화면으로 돌아갈 수 있다

(새로운 ViewController가 현재 스택의 맨 위에 추가)

let newVC = NewViewController()
self.navigationController?.pushViewController(newVC, animated: true)

→ 단계적인 네비게이션의 흐름

 

 

2.  setViewControllers

현재 네비게이션 스택을 교체

네비게이션 스택에 있는 모든 ViewController를 대체하고, 새로운 ViewController 목록을 스택에 설정

Back 버튼을 사용할 수 없으며, 네비게이션 스택의 모든 ViewController가 제거되고, 새로운 ViewController 배열만 스택에 남는다

let newVC = NewViewController()
self.navigationController?.setViewControllers([newVC], animated: true)

 로그인 후 메인 화면으로 이동하거나, 앱의 흐름을 완전히 리셋