У меня прототип ячейки. У меня есть несколько ярлыков внутри. Я использую auto-layout для изменения размера одной из ярлыков, чтобы изменить высоту и соответствовать контенту. Мне нужно изменить размер всего UITableViewCell
.Как изменить динамическую высоту UITableViewCell с помощью heightForRowAtIndexPath?
О событии heightForRowAtIndexPath
Я создаю фиктивную ячейку для расчета высоты. Я использую следующий example. Я должен установить надлежащее высота. Моя проблема заключается в том, что она возвращает 0.
Проблемы в моей точке зрения, в следующем коде:
CGSize size = [self.prototypeCell.contentView
systemLayoutSizeFittingSize:UILayoutFittingCompressedSize];
return size.height+1;
Вид содержания имеет высоту 44, но этот метод возвращает 0. В результате I см ячейку бушель высота 1.
EDIT:
Мой код для всего метода:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
[self configureCell:self.prototypeCell forRowAtIndexPath:indexPath];
self.prototypeCell.bounds = CGRectMake(0.0f, 0.0f, CGRectGetWidth(self.twDetails.bounds), CGRectGetHeight(self.prototypeCell.bounds));
//[self.prototypeCell layoutIfNeeded];
[self.prototypeCell.contentView setNeedsLayout];
[self.prototypeCell.contentView layoutIfNeeded];
CGSize size = [self.prototypeCell.contentView systemLayoutSizeFittingSize:UILayoutFittingCompressedSize];
return size.height+1;
}
EDIT 2:
Я думаю, что я неправильно называя configureCell снова в этом месте:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
PESvcPaymentDetailsCell *dispositionCell = [tableView dequeueReusableCellWithIdentifier:dispositionCellIdentifier forIndexPath:indexPath];
if(indexPath.row <= singApp.operationPostpaidDispositionsList.dispositionsCount - 1) {
[self configureCell:dispositionCell forRowAtIndexPath:indexPath];
}
else {
}
//[tvCellsArray addObject:dispositionCell];
return dispositionCell;
}
Так может быть, я инициализирует его снова, делая это?
Вы используете AutoLayout? – l0gg3r
Да, @ l0gg3r. Я использую авто-макет. Я попытался использовать его для изменения размера, но в этом случае ярлык с дополнительными данными не растягивался. – new2ios