浜松のWEBシステム開発・スマートフォンアプリ開発・RTK-GNSS関連の開発はお任せください
株式会社シーポイントラボ
TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:静岡県浜松市中区富塚町1933-1 佐鳴湖パークタウンサウス2F

【Swift】presentで遷移した先のページにナビゲーションバーを表示させる方法

タイトル通り、Swift で作成したアプリで、present を使って遷移した先のページに NavigationBar を追加する方法です。
self.navigationItem.title でタイトルを表示したかったのにできず、地味に困っていたので助かりました。

参考にさせていただいた記事はこちらから。

【Swift3】 presentで画面遷移したときに遷移先のViewにNavigationBarを表示させておく – また1からこつこつと
http://mjk0513.hateblo.jp/entry/2017/03/31/011959

 

コードはこちら。

let nextPageController: NextPageController = NextPageController()
let navigationController = UINavigationController(rootViewController: nextPageController)
self.present(navigationController, animated: true, completion: nil)

ポイントは2行目で、単なるページ遷移だと 1行目で定義したコントローラをそのまま 3行目に渡して遷移させているのですが、上記のように 2行目にナビゲーションコントローラを間に挟むことで、ナビゲーションバーを設定することができます。
変更はこれだけ!
実際に実行したところ、遷移した先のページにナビゲーションバーが追加されていました!

 

以上、Swift で遷移先のページにナビゲーションバーを追加する方法でした。
ずっと遷移先のページで何かしらの設定をするものだと思い込んでいたので、遷移時にこうして設定するとは思い浮かばず…若干ハマりました。
swift navigationbar 追加」などで調べただけだと今回の手法にはなかなかたどり着けなかったので、同じことにお悩みの方のご参考になれば幸いです。

  • この記事いいね! (1)