2013-11-11 2 views
0

Я работаю над iPad-приложением, в котором есть два контроллера, контроллер входа и контроллер просмотра. Контроллер Login вызывает пользователя для имени пользователя/пароля и после аутентификации, есть модальный переход к контроллеру представления.iOS: управление состоянием между segues

Я реализовал тайм-аут, в котором после 20 минут бездействия приложение переходит к контроллеру входа. Однако, когда пользователь регистрируется в приложении, состояние контроллера просмотра не сохраняется.

Есть ли способ передать объект View Controller обратно в контроллер входа для повторного использования после входа в приложение снова? Есть ли лучший способ управлять государством?

ответ

0

Две возможности прийти на ум ...

Вы можете создать объект модели либо как «синглтон» или, возможно, принадлежит делегата приложения и обновлять его из контроллера просмотра и чтения из него всякий раз, когда ваш взгляд диспетчерское появится вид.

Другой вариант - иметь контроллер вида в качестве корневого контроллера приложения, а контроллер входа - модальное наложение.

0

Ваш комментарий «Управление состоянием» - это ваш ответ.

Если у вас есть переменные сведения о вашем контроллере вида, который вы хотите сохранить, а затем сохраните их по мере их изменения (либо в NSUserDefaults, либо CoreData, либо в каком-либо другом постоянном хранилище) и запишите их, когда ViewController вызывает viewDidLoad.

Хранение всего UIViewController на уровне AppDelegate только для сохранения нескольких значений, вероятно, будет очень расточительным и не поможет вам вообще, если приложение завершится. По этой и многим другим причинам лучше всего следовать MVC и сделать вашу модель постоянным магазином, который подает представление.

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