Я создаю довольно сложное бизнес-приложение на iPad IOS 4.2: 4 вкладки с потенциально глубокими навигационными путями на каждой вкладке.
По мнению некоторых из ваших более опытных разработчиков IOS, каковы будут общие ожидания пользователя в отношении сохранения состояния приложения между запусками (т.е. после того, как приложение будет полностью завершено и впоследствии перезапущено)? Я использую Базовые Данные и имею все проблемы с данными, но меня беспокоит навигационное дерево приложения. Если пользователь покинул 1-ю вкладку на экране 3, 2-ю вкладку на экране 4, третью на экране 2, где он оставил запись новой записи наполовину завершенной, и был, когда приложение входило в фоновый режим , работая над 4-й вкладкой на экране 3 ... как вы думаете, будет ли средний пользователь ожидать, что приложение запомнит все, что будет запущено в следующий раз? (Моя интуиция говорит да, хотя я не уверен, как долго.)
Если ответ «да», можете ли вы предложить общую стратегию для решения этой проблемы (и, опять же, я говорю здесь о дереве навигации, а не о базовых данных)? Например, если бы навигационные контроллеры использовались в качестве корневого контроллера представления для каждой вкладки, было бы достаточно просто записать достаточно информации об их навигационных стеках, чтобы иметь возможность восстановить их позже. Но как насчет таких вещей, как всплывающие окна, листы предупреждений / действий или модальные ВК, созданные на лету? Должен ли каждый контроллер представления записывать состояние своих объектов пользовательского интерфейса и, если да, каков рекомендуемый способ сделать это?
Я знаю, что многое зависит от пользователя, но я прошу общую точку зрения на эти вопросы, то есть голос опыта.