Navigation Controller
의 흐름 속에서 특정 화면에서는 Navigation Bar
가 보이지 않게끔 설정해야할 때가 있죠? 그럴 때는 코드를 통해 해결할 수 있는데요, 두 가지 방법을 알아보겠습니다.
setNavigationBarHidden(_:animated:)
메서드 이용Navigation Bar
를 숨기고 나타낼 때 애니메이션을 적용할 수 있습니다.override func viewWillAppear(_ animated: Bool) {
navigationController?.setNavigationBarHidden(true, animated: true) // 뷰 컨트롤러가 나타날 때 숨기기
}
override func viewWillDisappear(_ animated: Bool) {
navigationController?.setNavigationBarHidden(false, animated: true) // 뷰 컨트롤러가 사라질 때 나타내기
}
isNavigationBarHidden
프로퍼티 이용Navigation Bar
를 숨기고 나타낼 수 있습니다. 애니메이션이 필요 없는 경우에 사용합니다.override func viewWillAppear(_ animated: Bool) {
navigationController?.isNavigationBarHidden = true // 뷰 컨트롤러가 나타날 때 숨기기
}
override func viewWillDisappear(_ animated: Bool) {
navigationController?.isNavigationBarHidden = false // 뷰 컨트롤러가 사라질 때 나타내기
}