Ответ 1
Вы ищете метод reloadRowsAtIndexPaths: в UITableView. Это приведет к перерасчету высоты (и последующей перерисовки) определенных ячеек. Он может даже анимировать настройку, чтобы вы могли выполнять обновление в режиме реального времени по мере прокрутки пользователя, так что представление таблицы не "рывком" или "заиканием", пока высота пересчитывается. Я просто успешно реализовал это, чтобы сделать то, что вы описали.