0

Я пишу приложение iOS, которое включает UITabBarController, где одна из вкладок является профилем пользователя. Однако, если пользователь не выполнил вход, я хотел бы, чтобы приложение отображало другой ViewController (вход/регистрация).Условно Создайте два разных контроллера представления из одного UITabBarItem

В настоящее время у меня есть вкладка профилирования профиля для навигационного контроллера, который имеет RootViewController как ProfileViewController. В представлении ProfileViewController ViewDidLoad у меня есть проверка, чтобы убедиться, что пользователь выполнил вход. Если пользователь не работает, он выполняет segue для SignInSignUpViewController, который в конечном итоге возвращается к ProfileViewController.

Этот подход чрезмерно сложный и сломанный несколькими способами. Например, навигационный контроллер позволяет пользователю вернуться в контроллер регистрации/подписания после того, как они уже вошли.

Я чувствую, что это довольно распространенная идиома в iOS, но я не могу найти хорошее решение онлайн. У кого-нибудь есть идеи?

Заранее благодарен!

ответ

0

Возможно, вы захотите ознакомиться с методом UINavigationController– setViewControllers:animated:. После того, как вы вошли в систему, позвоните и передайте свой профиль ProfileViewController. Он будет находиться в верхней части стека, поэтому пользователь не сможет вернуться к контроллеру входа в систему.

Смежные вопросы