以下は典型的な使用例のようです: ログイン画面を表示する LoginViewController でアプリを起動します。ユーザーが正常にログインしたら、アプリのメイン ビューを表示します (これを MainViewController と呼びましょう)。
LoginViewController を UINavigationController に配置し、その後 MainViewController をプッシュする必要はありません。LoginViewController がスタックの一番下に存在し続ける理由がないためです。これは、二度と表示されないからです。また、アプリの後続の起動では、何らかのログイン トークンを既に取得しており、LoginViewController がまったく表示されないため、ナビゲーション コントローラーのスタックの起動ごとに矛盾が生じることがわかります。 .
また、同じ理由で、LoginViewController から MainViewController をモーダルに提示したくありません (モーダルの場合、LoginViewController が背後にロードされたままになります)。
また、ウィンドウの rootViewController を MainViewController (以前は LoginViewController に設定されていた場所) に設定したくない場合もあります。これは、遷移が許可されないためです。
上記のロジックに欠陥があるかどうか、実際にこれらのシナリオのいずれかが正しいかどうかについてフィードバックをお願いします。または、そうでない場合、このシナリオのために他の人は何をしていますか?