이번 과제에서는 두 개의 화면을 사용하게 된다.
UINavigationController를 생성하고 초기 뷰 컨트롤러를 지정해주었다.
원래 만들어 논 UI에 위에 네비게이션 바가 생겼다.
override func viewDidLoad() {
super.viewDidLoad()
navigationItem.title = "Pokemon PhoneBook"
configureUI()
loadPhoneBook()
}
navigationItem으로 여러 프로퍼티를 가지고 있다.
https://developer.apple.com/documentation/uikit/uinavigationcontroller
요런식이다.
두 방법을 이용하면 된다.
self.navigationController?.setNavigationBarHidden(true, animated: false)
self.navigationController?.navigationBar.isHidden = true
특징 | setNavigationBarHidden | navigationBar.isHidden |
---|---|---|
애니메이션 지원 | 지원 (애니메이션을 켜거나 끌 수 있음) | 지원하지 않음 |
사용 방법 | 메서드 호출을 통해 상태를 변경 | 속성에 직접 접근하여 상태를 변경 |
일반적인 사용 상황 | 숨김/표시 전환 시 애니메이션이 필요하거나 권장될 때 | 즉시 상태를 변경해야 하거나 단순한 경우 |
다음 뷰인 연락처 추가에서는 네비게이션 바를 그대로 사용하고 싶은데 아예 사라졌다.
ViewController의 생명주기를 이용하여 첫 화면에만 커스텀 네비게이션 바를 사용해보자.
잘 되었다... 끝!