Лучший способ загрузить приложение, как оно было в предыдущем состоянии, когда оно было завершено - PullRequest
3 голосов
/ 21 ноября 2008

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

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

Ответы [ 4 ]

5 голосов
/ 21 ноября 2008

Основываясь на том, что сказал Марк, при условии, что у вас есть контроллер базового вида, а затем один или несколько уровней детализации, загрузите все контроллеры представления до «текущего» с помощью [navigationController pushViewController: viewController animated: NO]. Затем, когда пользователь нажимает кнопку «Назад», ему будет представлен предварительно загруженный предыдущий контроллер представления. Хорошим примером этого является приложение «Контакты», которое предварительно загружает контроллер представления групп, а затем помещает контроллер представления для текущей группы (обычно «Все контакты») поверх этого.

4 голосов
/ 21 ноября 2008

Проверьте пример приложения Apple DrillDownSave:

"Демонстрирует, как восстановить пользователя текущее местоположение в раскрывающемся списке стиль пользовательского интерфейса и восстановить это местоположение при повторном запуске приложения. "

http://developer.apple.com/iphone/library/samplecode/DrillDownSave

2 голосов
/ 21 ноября 2008

Вам нужно будет связать идентификатор с каждым контроллером представления и сохранить это значение по умолчанию для пользователя при изменении текущего представления. При следующем запуске прочитайте это значение, и вы узнаете, какой контроллер представления необходимо загрузить изначально.

0 голосов
/ 21 июня 2010

Я опубликовал небольшую библиотеку , чтобы помочь делать такие вещи. Я уже использую его в приложении, опубликованном в App Store, и это намного проще, чем реализация NSCoder для каждого представления вручную: P

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...