в UITableViewDelegate вы можете изменить высоту вашей ячейки с помощью функции
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
// do your stuff here like resize your cell height
}
и после этого для отражения изменений в представлении необходимо перезагрузить таблицу на
[self.table reloadData];
и если у вас есть секция в вашей таблице, вам не нужно перезагружать всю таблицу и избегать мерцания, вы просто перезагружаете ту конкретную секцию таблицы, для которой вы выполняете изменение высоты по индексу пути этой ячейки, вы также можете использовать некоторые другие способ найти нужную ячейку здесь - мой стиль поиска ячейки, которую мне нужно перезагрузить
NSIndexPath *ip = [self.table indexPathForCell:cell];
[self.table reloadSections:[NSIndexSet indexSetWithIndex:ip.section] withRowAnimation:UITableViewRowAnimationAutomatic];