Tag Archives: table view

Сохранение состояния iOS-приложения, кое-что еще

Еще одна полезная возможность для разработчиков по сохранению состояния iOS-приложения (тема рассматривалась: часть 1, часть 2) – семантический идентификатор модели. Поясню суть на примере.

Допустим, в вашем приложении есть табличное представление (UITableView). По нажатию на одну из ячеек открылся контроллер, показывающий детальную информацию об элементе. И именно в таком состоянии приложение было закрыто.
С точки зрения удобства использования приложения – при возвращении из детального представления, таблица должна показывать те же записи, что и до перехода. Кроме того, подсветка выбора элемента таблицы должна пропасть с анимацией.
Оба этих действия делаются системой сохранения и восстановления состояния автоматически. Однако, по-умолчанию сохраняются только номера ячеек. Грубо говоря, сохраняется положение прокрутки “показывать ячейку в секции N, ряд M сверху“, а также “была выбрана ячейка в секции K, ряд L“.

Если перечень и порядок ячеек в таблице не меняется, такое поведение будет достаточным. Однако, если между запусками приложения порядок сортировки или количество элементов в таблице могло поменяться, есть способ вернуть пользователя в ту часть таблицы, где находится выбранный им элемент.
Continue reading

Advertisements