Состояние сохранения iOS для сложных приложений

Я создаю довольно сложное бизнес-приложение на iPad IOS 4.2: 4 вкладки с потенциально глубокими путями навигации на каждой вкладке.

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

Если ответ положительный, можете ли вы предложить общую стратегию решения этой проблемы (и, опять же, я говорю здесь о дереве навигации, а не о Основные данные)? Например, если бы навигационные контроллеры использовались в качестве корневого контроллера представления для каждой вкладки, было бы достаточно просто записать достаточно информации об их навигационных стеках, чтобы иметь возможность восстановить их позже. Но как насчет таких вещей, как всплывающие окна, листы предупреждений / действий или модальные венчурные каналы, созданные на лету? Должен ли каждый контроллер представления записывать состояние своих объектов пользовательского интерфейса и, если да, то каков рекомендуемый способ сделать это?

Я знаю, что многое из этого зависит от пользователя, но я прошу дать общий взгляд на эти вопросы, то есть голос опыта.

7
задан halfer 16 April 2018 в 18:48
поделиться