【Swift】[20]rootViewControllerでの画面遷移

今回はrootViewControllerを用いての画面遷移の方法について書こうと思います。

まず、rootViewControllerとは何か。。。

これは自分も上手く説明が出来ないのですが、要は大元?最下層となるViewControllerの事です。

ですので、今回のrootViewControllerを用いての画面遷移は根こそぎから画面を変更するみたいなものです。。

自分はこの方法は新しいUINavigationViewControllerに画面遷移するときのみでしか使用していないので、その方法を記載いたします。

var window: UIWindow?
var navigationController = UINavigationController()

self.window = UIWindow(frame: UIScreen.main.bounds)
self.window!.rootViewController = navigationController
self.window!.makeKeyAndVisible()

上記のソースコードにおける最後の行の[self.window!.makeKeyAndVisible()]では最終的に画面に表示させることを行なっているものです。

また、windowを定義する際にOptionalで書いている理由としては、、

このコード自体、アプリ起動時に初めに呼ばれるAppDelegate.swiftに記載しているのですが、、、

そのAppDelegateが継承しているUIAppDelegateクラスにおけるフィールド変数にこのwindowがOptional型で定義されているため、、、

Optional型以外で宣言すると下記のエラーが生じるためです。。

Type of ‘window’ has different optionality than required by protocol ‘UIApplicationDelegate’

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です