ストーリーボードには、インスペクタペインに「イニシャルビューコントローラはありますか?」というプロパティがあります。プログラムでこのプロパティにアクセスするにはどうすればよいですか?私はそれを変更したくない。私は、ビューコントローラが現在初期ビューコントローラであるかどうかをチェックしたいだけです。 AppDelegateで、View Controllerをルートビューコントローラにする条件を指定しました。いったん実際にルートビューコントローラになったら、ビューコントローラ自体からいくつかのコードを実行したい(ただし、ルートビューコントローラの場合のみ)。ですから、私はViewDidLoadメソッドからコードを実行するだけではありません。私は、ビューコントローラが最初にルートビューコントローラであるかどうかを確認したいのですが、もしそうなら、次にいくつかのコードを実行したいと思います。何か案は?View Controllerが初期View Controllerであるかどうかを確認するにはどうすればよいですか? (SWIFT 3)
0
A
答えて
1
ストーリーボードの初期表示コントローラーは、アプリケーションのルートビューコントローラーと同じではありません。たとえば、独自の初期View Controllerを持つ複数のストーリーボードがある場合があります。コードによっては、現在のrootViewControllerも変更されている可能性があり、アプリケーションから起動された初期View Controllerとは異なります。現在のビューコントローラは、ルートビューコントローラである場合
を確認するには、これを使用する:if self == UIApplication.shared.keyWindow?.rootViewController {
/*do stuff*/
}
は、しかし、あなたがこれを置く場所について注意してください。私はviewDillLoadではなく、viewWillAppearまたはviewDidAppearでチェックを行います。
+0
@FreddyBenson:これは正解です。あなたの質問に答えた場合は、それを正しい答えとして選択してください。 – mttdbrd
関連する問題
- 1. View Controllerから別のView Controllerに時間を転送するにはどうすればいいですか?
- 2. Table View Controllerを自分のView Controllerサブクラスに設定するにはどうすればよいですか?
- 3. Table View Controllerのタイプを通常のView Controllerに変更するにはどうすればよいですか?
- 4. View Controllerの配列内のView Controllerを解放するにはどうすればいいですか?
- 5. View Controllerをカスタムデータで初期化するにはどうすればよいですか?
- 6. スイフト3でスプラッシュ画面としてView Controllerを作成するにはどうすればよいですか?
- 7. 確認の後、View Controllerにナビゲートするにはどうすればよいですか?
- 8. View Controllerに戻るにはどうすればいいですか?
- 9. Swift 3 View Controllerを表示
- 10. 他のView ControllerからView Controllerの詳細を含むView階層を取得するにはどうすればいいですか?
- 11. Swift 2のボタンからプログラムでView Controllerを開くにはどうすればよいですか?
- 12. 最初の起動時に表示されるチュートリアルがある場合、どのView Controllerを初期View Controllerにする必要がありますか?
- 13. View Controllerを再初期化する - iPhone
- 14. NSMutableDictionaryをあるViewControllerから別のView Controllerに渡すにはどうすればいいですか?
- 15. .swiftを変更してView ControllerではなくTable View Controllerに接続する
- 16. ベストプラクティス:View Controllerの読み込みに時間がかかる場合はどうすればよいですか?
- 17. 現在のView Controllerの実装ファイルから別のView Controllerをロードするにはどうすればよいですか?
- 18. コンテナビュー内の別のView ControllerからView Controllerをロードする
- 19. Swift 3 - 非同期ジョブ後にView Controllerを解除する
- 20. Swift:ユーザーがTableviewセルをタップすると、あるView Controllerから別のView Controllerへデータをシフトする方法
- 21. App Delegateやその他のView Controllerから複数のView Controllerにアクセスするにはどうすればいいですか?
- 22. View Controllerからビューへのアウトレット接続を作成するにはどうすればよいですか?
- 23. 古いデバイス用に異なるView Controllerをロードするにはどうすればよいですか?
- 24. iOSでアプリを開いた後、View Controllerを表示するにはどうすればよいですか?
- 25. View ControllerからStoryboard Segueを作成するにはどうすればよいですか?
- 26. 1つのView Controllerを別のコントローラから制御するにはどうすればよいですか?
- 27. Xcode、Swift、Table View Controller
- 28. 別のView ControllerでView Controllerを起動する方法は?
- 29. 2番目のView Controllerを起動した後、親View Controllerを閉じるにはどうすればよいですか?
- 30. iOS開発で新しいView Controllerを切り替えるにはどうすればよいですか?
私はあなたが本当に探しているのは、ストーリーボードの最初のVCとは関係なく、現在のrootViewControllerが何であるかをチェックする方法です。 – BJHStudios
ルートビューコントローラーのビューにタグを付け、その後にタグ/ビューを確認することができます。 – Dasem
@BJHStudiosええ、申し訳ありませんが、それは私が意味するものではありません。これらの2つの重要な違いが何であるかはわかりませんでしたが、初期ビューコントローラ(アプリが起動した後に最初に表示されるビューコントローラ)を確認する方法を探しています。 AppDelegate内のコードを変更する必要があるかもしれません。なぜなら私は自分のVCをrootViewControllerとして設定していますが、最初に表示される最初のVCとして設定するだけです。 –