У меня есть UITableView с пользовательским UITableViewCell, определенным в раскадровке с использованием автоматического макета. Ячейка имеет несколько многострочных UILabels.
UITableView, кажется, правильно рассчитывает высоту ячеек, но для первых нескольких ячеек эта высота не разделяется должным образом между метками. После небольшой прокрутки все работает как положено (даже ячейки, которые изначально были неправильными).
- (void)viewDidLoad {
[super viewDidLoad]
// ...
self.tableView.rowHeight = UITableViewAutomaticDimension;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
TableViewCell *cell = [self.tableView dequeueReusableCellWithIdentifier:@"TestCell"];
// ...
// Set label.text for variable length string.
return cell;
}
Есть ли что-то, чего мне может не хватать, из-за чего автоматический макет не может выполнять свою работу первые несколько раз?
Я создал образец проекта, демонстрирующий это поведение.


