Irohabook
0
527

SwiftでnavigationControllerのバーを最初のviewだけ隠す:viewDidLoadでなくviewWillAppear内にisNavigationBarHiddenを記す

navigationの開始viewでバーは表示せず、以降はバーを表示するとき、viewDidLoadでなくviewWillAppearにコードを記述する。実際のコードはisNavigationBarHiddenをtrueにしたりfalseにしたりするだけ。

最初のview

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    self.navigationController?.isNavigationBarHidden = true
}

二番目以降のview

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    self.navigationController?.isNavigationBarHidden = false
}

viewWillAppearとviewWillDisappearを間違えないようにしよう。

次の記事

UINavigationController