Ну, если у вас есть количество доступных строк в каждой таблице, то это не так уж сложно.
Я предполагаю, что у вас есть все представления таблицы в массиве для простоты управления.
Вы просто должны были бы пройтись по массиву, сохраняя счетчик для позиции, а затем изменить размер таблицы на основе счетчика.
CGFloat currentYPosition = 0;
for (UITableView *tableView in allTableViews) {
CGRect frame = tableView.frame;
CGFloat height = tableView.rowHeight * numberOfRowsInTableView;
frame.origin.y = currentYPosition;
frame.size.height = height;
tableView.frame = frame;
currentYPosition += height;
}
Для переменной высоты вы можете добавить любые другие дополнительные функции.что у вас может быть (заголовок табличного представления, нижний колонтитул и т.