ios 8 (UITableViewCell): ограничения неоднозначно указывают высоту нуля для представления содержимого ячейки табличного представления
У меня есть таблица с использованием автоматических ограничений макета, все работает в iOS 7, но когда я тестировал в iOS 8, я получил следующее предупреждение
Только предупреждение один раз: обнаружен случай, когда ограничения неоднозначно указывают высоту нуля для представления содержимого ячейки табличного представления. Мы рассматриваем развал непреднамеренно и вместо этого используем стандартную высоту.
После того, как я тщательно изучил эту проблему, я обнаружил, что должен добавить следующие строки в viewdidload только для iOS 8
self.tableView.rowHeight = UITableViewAutomaticDimension;
self.tableView.estimatedRowHeight = 87;
После этого все еще я получаю это предупреждение, и высота ячейки не является правильной, которая не берет высоту от Раскадровки
Для получения дополнительной информации о UITableViewCell, найдите наши ограничения для ячейки просмотра контента.
-(void) updateConstraints {
[super updateConstraints];
if(!didSetupConstraints ) {
didSetupConstraints = YES;
[self.contentView removeConstraints:self.contentView.constraints];
// Interval Title
//Leading
constraint = [NSLayoutConstraint constraintWithItem:self.intervalTitle attribute:NSLayoutAttributeCenterX relatedBy:NSLayoutRelationEqual toItem:self.contentView attribute:NSLayoutAttributeCenterX multiplier: 1.0 constant:0.0];
[self.contentView addConstraint:constraint];
//Top
constraint = [NSLayoutConstraint constraintWithItem:self.intervalTitle attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.marketLocationTitle attribute:NSLayoutAttributeTop multiplier:1.0 constant:0.0];
[self.contentView addConstraint:constraint];
}
1 ответ
Авто макет прямо на этом. Невозможно рассчитать высоту ячейки из .CenterX
а также .Top
для этикетки. Одним из способов решения проблемы будет удаление существующих .CenterX
ограничение и добавление нового .Bottom
ограничение. Таким образом, Auto Layout может легко рассчитать высоту ячейки.