У меня есть UITableView с ячейками, содержащими переменную высоту UILabels. Я могу вычислить минимальную высоту, которую должна использовать маркировка sizeWithFont:constrainedToSize:lineBreakMode:
, который хорошо работает, когда табличное представление сначала загружается. Когда я поворачиваю табличное представление, ячейки становятся более широкими (значение, что существует меньше строк, требуемых отобразить содержание). Есть ли какой-либо способ, которым у меня может быть высота ячеек, повторно определенных UITableView во время анимации изменения ориентации или сразу прежде или после?Спасибо.
Ваш UITableViewController может реализовать метод tableView: heightForRowAtIndexPath:
, чтобы указать высоту строки для конкретной строки, и он может смотреть на текущую ориентацию ( [ [UIDevice currentDevice] Ориентация]
), чтобы решить, какую высоту возвращать.
Чтобы убедиться, что tableView: heightForRowAtIndexPath:
снова вызывается при изменении ориентации, вам, вероятно, потребуется
обнаружить изменение ориентации, как описано в этом вопросе и вызовите [tableView reloadData]
.