Как вы переходите в новый немодельный контроллер представления без использования UINavigationController?

Следующее выглядит как типичный вариант использования: вы запускаете приложение с помощью LoginViewController, который отображает экран входа в систему. После того, как пользователь успешно вошел в систему, вы хотите показать основной вид для вашего приложения (назовем его MainViewController).

Вы не хотите помещать LoginViewController в UINavigationController и впоследствии помещать MainViewController в него, потому что нет причин сохранять LoginViewController в нижней части стека, поскольку он никогда больше не будет отображаться. Кроме того, при последующих запусках приложения вы будете определять, что у вас уже есть какой-либо токен входа, и он никогда не закончится отображением LoginViewController, так что может возникнуть несоответствие от запуска до запуска стека контроллера навигации. ,

Вы также не хотите модально представлять MainViewController из LoginViewController по той же причине (если он модальный, он сохранит загрузку LoginViewController позади).

Вы также не хотите устанавливать rootViewController окна в MainViewController (где он ранее был установлен в LoginViewController), потому что это не позволит вам выполнить переход.

Я хотел бы получить некоторые отзывы о том, является ли моя логика выше ошибочной, и на самом деле один из этих сценариев является правильным? Или, если нет, что другие делают для этого сценария?

Ответы на вопрос(2)

Ваш ответ на вопрос