私はViewController階層を持ち、UINavigationViewControllerをルートにしています。
ViewControllerが初めて起動されたかどうか、またはナビゲーションスタックの巻き戻しの結果として起動されたかどうかを確認するにはどうすればよいですか?初めてUIViewControllerが起動されたことを確認する方法はありますか?
3
A
答えて
6
ビューコントローラが最初に表示されているか、別のビューコントローラが却下されたので、それが表示されていた場合、あなたは簡単に次の操作を行うことができたときに呼び出されているあなたはviewWillAppear:
(またはviewDidAppear:
)かどうかを知りたいと仮定:
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
if isBeingPresented() || isMovingToParentViewController() {
// This is the first time this instance of the view controller will appear
} else {
// This controller is appearing because another was just dismissed
}
}
0
ナビゲーションスタックで新しいViewControllerをプッシュすると、初めてインスタンス化され、スタックからポップアウトすると、deallocまたは解放されます。あなたが押したり進むと、それは初めてですが、以前のビューコントローラに戻ったときに、現在のVCはすでにメモリに入っていて、初めてではありません!!!
+0
initメソッドが呼び出された場合、これはVCが初めて起動されることを意味しますか? –
+0
ええ、それは言うことができます! – Lion
関連する問題
- 1. UIViewControllerが表示されているかどうかを確認する良い方法はありますか?
- 2. 初めてアプリを起動する方法を確認するには?
- 3. コードがLaunchDaemonとして実行されているときに、再起動せずに初めてLaunchAgentを起動する方法はありますか?
- 4. 戻り値のないストアドプロシージャが実行されたことを確認する方法はありますか?
- 5. Swiftアプリケーションでユーザーに表示されたときにUIViewControllerが表示されたかどうかを確認する方法はありますか?
- 6. x-sendfileが起動しているかどうかを確認する方法はありますか?
- 7. プロセスが最初に起動するかどうかを確認する方法
- 8. プロパティが設定されていることを確認する方法はありますか?
- 9. Firebugがブラウザにインストールされていることを確認する方法はありますか?
- 10. Kerberosが使用されていることを確認する方法はありますか?
- 11. Android - アプリケーションを初めて起動したかどうかを知る方法はありますか?
- 12. EclipseのコンソールビルドまたはGUIビルドが起動されているかどうかをプログラムで確認する方法はありますか?
- 13. Javaでガベージコレクションされたオブジェクトを確認する方法はありますか?
- 14. iOSデバイスが起動後に再起動されたかどうかを確認する方法
- 15. 変更を確認するためにWebrickを再起動する必要がある場合があることは間違いありませんか?
- 16. Firebaseでユーザーが初めて認証されたかどうかを確認する方法 - Android
- 17. jQuery:divがスクロールダウンされたことを確認する方法
- 18. フォームが子ウィンドウとして起動されたかどうかを確認する方法
- 19. perlのバージョンがある値よりも大きくないことを確認する方法はありますか?スクリプトを確保するため
- 20. dictでキー(または値)が指定されたデータ型であることを確認する方法は?
- 21. CNContactがお気に入りであることを確認する方法はありますか?
- 22. Akka.net:タイムアウトメッセージが常に起動されることを確認する
- 23. は、performSelector:withObject:afterDelay:が登録されているかどうかを確認する方法はありますか?
- 24. xen DomUがHVMまたはPVであることを確認する方法
- 25. PHP:ムービーフォーマットがMKVまたはWMVであることを確認する方法
- 26. バッチファイルから、プログラムがインストールされているかどうかを確認する方法はありますか?
- 27. ウェブアプリケーションがスプリングブートアプリケーションで起動した後、自動的に 'dispatcherServlet'を初期化する方法はありますか?
- 28. ソケットがまだ開いていることを確認する方法はありますか?
- 29. SQSキューが手動で作成されたか、CFテンプレートを使用して作成されたかを確認する方法はありますか?
- 30. SQLの更新が完了したかどうかを確認する方法はありますか?ここ
'viewWillAppear'関数のチェックで、ビューが初めて表示されたかどうか、または他のビューが一度終了したために表示されているかどうかを確認していますか? – rmaddy
@rmaddyがviewWillAppear関数でチェックを行って、これが初めて表示されるかどうかを確認します –
あなたのユースケースは何ですか?私は一般的にあなたのビューコントローラの外であなたの状態を管理し、viewWillAppearで簡単に更新することをお勧めします。 – PeejWeej