UITableViewCell, находящийся в очереди, имеет неправильный макет до прокрутки (с использованием автоматического размещения)

У меня есть обычайUITableViewCell подкласс, к которому были применены ограничения на автоматическое расположение в Интерфейсном Разработчике. Ячейка содержит несколько представлений, включая.UITextField

Соответственно, размерUITextField ограничен таким образом, что между ним и следующим видом по умолчанию установлен горизонтальный интервал.

Ячейка создается следующим образом:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"ProgressCell";
    ProgressCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier
                                                     forIndexPath:indexPath]

    cell.textField.text = @"Some string that is different for each cell";

    return cell;
}

Когда ячейка появляется впервые,UITextField переходит правильный кадр и появляется заUIView вправо. Однако, когда я прокручиваю ячейку за пределами экрана, пауза, а затем прокручиваю назад, текст усекается правильно.

Пример показан ниже (при втором редактировании).

Я пробовал звонить[cell setNeedsLayout] а также[cell setNeedsDisplay] для клетки вcellForRowAtIndexPath, а также выполнение их после задержки. Ни один не эффективен.

Что делает прокрутка за пределами экрана, что приводит к правильному отображению ячейки, и как я могу либо повторить это, либо исправить основную проблему?

РЕДАКТИРОВАТЬ:

призвание

[self.tableView reloadData];
[self.tableView reloadSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationAutomatic];

для того, чтобы перезагрузить ячейку, кажется, чтобы макет отображался правильно в первый раз.

Однако сейчасбрейки (иногда) при прокрутке (т. е. при обратной прокрутке ограничения макета теперь не применяются правильно).

призвание[cell setNeedsLayout] вcellForRowAtIndexPath Похоже, не решить эту проблему.

EDIT2:

Верхняя ячейка, как показаноВот, отображается правильно (как и нижняя ячейка), пока я не прокрутил экран вниз. Это с тех пор исчезло.

Это отражает проблему с первого редактирования - этовторой рендеринг, который является проблемой (заставляет меня думать, что это может иметь какое-то отношение к повторному использованию ячейки?)

Ответы на вопрос(2)

Ваш ответ на вопрос