У меня есть пользовательский UITableViewCell, который имеет уменьшенное изображение и кучу текста. Высота строки выполнена с возможностью быть рассчитано автоматически с помощьюUITableView auto resizing row constraint ломается загадочно на iPhone 6Plus
tableView.estimatedRowHeight = 129;
tableView.rowHeight = UITableViewAutomaticDimension
высоты строки должна быть рассчитана как точно точек. Все выглядит отлично на iPhone 5. Тем не менее, на iPhone 6 Plus высота автоматической строки не срабатывает для случайных строк со следующим журналом.
(
"<NSLayoutConstraint:0x17009ddd0 V:|-(20)-[scoop.ThumbnailImage:0x124d2a5a0] (Names: '|':UITableViewCellContentView:0x124e23200)>",
"<NSLayoutConstraint:0x17009de70 UITableViewCellContentView:0x124e23200.bottomMargin == scoop.ThumbnailImage:0x124d2a5a0.bottom + 20>",
"<NSLayoutConstraint:0x17009e780 V:[scoop.ThumbnailImage:0x124d2a5a0(90)]>",
"<NSLayoutConstraint:0x17009ef00 'UIView-Encapsulated-Layout-Height' V:[UITableViewCellContentView:0x124e23200(138.333)]>"
)
В последней строке журнала, кажется, говорят, что по какой-то причине высота строки была рассчитана как 138.333вместо 138. Я уже немного стучал головой, но я не могу понять, почему это происходит. Может кто-нибудь, пожалуйста, помогите?
Обновление: Так выглядит моя ячейка просмотра таблицы.
UPDATE Я не мог получить код из основного репозитория, так как в его составе более крупного проекта. Но мне удалось воспроизвести проблему с помощью очень простого разумного проекта. Пожалуйста, найдите здесь on github.
Можете ли вы опубликовать код, который вычисляет высоту ячейки? –
Я использую tableView.estimatedRowHeight = 129; tableView.rowHeight = UITableViewAutomaticDimension для вычисления высоты строки в viewDidLoad моего контроллера. – suparngp
все еще, если он полностью динамичен, ошибок не должно быть. Даже если это не совсем 168. Предполагаете ли вы, что ваши представления внутри ячейки настроены таким образом, что если вы складываете все свои высоты, то это ровно 168? –