Как UITableViewRowAnimationAutomatic определяет, какую анимацию использовать?

В iOS 5 SDK введен новый тип анимации для вставки и удаления ячеек таблицы: UITableViewRowAnimationAutomatic. В документации Apple для этого значения просто говорится:

Табличное представление выбирает подходящий стиль анимации для вас.

Итак, как это работает, точно? Какие факторы учитывает табличное представление? Длина стола? Видимые данные? Фаза луны?

Ответы

Ответ 1

Это зависит от того, где вставляется строка.

Обычно, если вы манипулируете строками в начале или конце раздела и выбираете несоответствующую анимацию, строка может отображаться за заголовком/нижним колонтитулом раздела при анимации. Цель UITableViewRowAnimationAutomatic заключается в том, чтобы позволить представлению таблицы автоматически выбирать анимацию, которая выглядит хорошо.

Например, когда строка вставлена ​​в начале раздела, в представлении таблицы будет использоваться UITableViewRowAnimationBottom. Когда он вставлен в конце раздела, в представлении таблицы будет использоваться UITableViewRowAnimationTop.

Сессия WWDC 2011 "Изменения, советы, хитрости UITableView" более подробно обсуждается  3:25.