У меня есть следующий рабочий процесс, определенный в моем iPhone раскадровки проекта:iPhone iOS Какой правильный способ реализовать логин/выход из системы с помощью раскадровки?
- Войти-контроллер установлен как контроллер представления корня в раскадровке.
- У входа есть отдельный рабочий процесс для входа и настройки учетной записи.
- Обе рабочие процессы в конечном итоге модально представления вкладки с основным содержанием приложения
- для последующих запусков приложения, я программно определить правильный контроллер для создания экземпляра в
appDidFinishLaunching:
- для последующего приложения использовать панель вкладок с основным содержанием является корнем (программно установлен)
Теперь я хотел бы реализовать процесс «выхода из системы» - кнопка стирает все пользовательские данные и возвращает пользователя на исходный экран входа/настройки учетной записи.
У меня возникла проблема, из-за которой из нескольких состояний приложения мне нужно иметь несколько путей, чтобы вернуться на главный экран. Например:
Как бы я идти о реализации логики Логин/выхода из системы, определенный выше?
Есть ли правильный способ полностью свернуть иерархию представлений, которая в настоящее время находится на экране, и заменить ее на другую?
Я имею в виду это:
[self.window setRootViewController:tabBarViewController];
Но я не уверен, если это будет правильно выгрузить все ресурсы, используемые в старом стеке RootViewController, что я расцепления.
У меня есть аналогичные установки, сделанные несколько более сложный с помощью контроллера панели вкладок над меню выталкивания (гамбургер). Этот ответ сработал для меня чудесами: https://stackoverflow.com/questions/10273910/resetting-storyboard-on-logout По сути, это вопрос сохранения раскадровки, когда ваше приложение запускается и возвращается к началу раскадровки, когда необходимо. Это действительно неважно, где вы находитесь в своем приложении. – andyb