Да, вы можете это упростить.Просто назовите свою собственную реализацию -tableView:cellForRowAtIndexPath:
и используйте ячейку, которую вы получили от этого, то есть
UITableView *table = self.tableView;
NSIndexPath *index = [NSIndexPath indexPathForRow:0 inSection:0];
UITableViewCell *cell = [self tableView:table cellForRowAtIndexPath:index];
[table setRowHeight:cell.bounds.size.height]
Вуаля: больше нет дублирующегося кода.
В другой заметке, вы можете захотетьсделать это в -viewDidLoad
или -viewWillAppear:
, если ваш контроллер представления появится с анимацией.Выполнение этого в -viewDidAppear:
заставит высоту строки таблицы заметно подскочить, когда анимация представления представления заканчивается.