Я создаю табличное представление с ячейками, высота которых определяется автоматическим макетом.
Ячейка табличного представления имеет только одно подпредставление - UIImageView
, которое прикреплено к 4 сторонам ячейки табличного представления.
Представление изображения имеет ограничение для поддержания соотношения сторон 4:3
.
На следующем рисунке показана иерархия представления и ограничения.
Высота строки представления таблицы установлена на автоматический, как показано на следующем снимке экрана.
Когда приложение запускается, ячейка табличного представления выглядит, как и ожидалось, но следующие ошибки ограничения автоматического размещения отображаются в журналах
(
"<NSLayoutConstraint:0x600001d804b0 AppName.NeverClearImageView:0x7f938ce140f0.width == 1.33333*AppName.NeverClearImageView:0x7f938ce140f0.height (active)>",
"<NSLayoutConstraint:0x600001d80460 AppName.NeverClearImageView:0x7f938ce140f0.bottom == UITableViewCellContentView:0x7f938ce04790.bottom (active)>",
"<NSLayoutConstraint:0x600001d80410 H:[AppName.NeverClearImageView:0x7f938ce140f0]-(0)-| (active, names: '|':UITableViewCellContentView:0x7f938ce04790 )>",
"<NSLayoutConstraint:0x600001d82a80 H:|-(0)-[AppName.NeverClearImageView:0x7f938ce140f0] (active, names: '|':UITableViewCellContentView:0x7f938ce04790 )>",
"<NSLayoutConstraint:0x600001d82bc0 V:|-(0)-[AppName.NeverClearImageView:0x7f938ce140f0] (active, names: '|':UITableViewCellContentView:0x7f938ce04790 )>",
"<NSLayoutConstraint:0x600001dbb930 'UIView-Encapsulated-Layout-Height' UITableViewCellContentView:0x7f938ce04790.height == 125.5 (active)>",
"<NSLayoutConstraint:0x600001db8dc0 'UIView-Encapsulated-Layout-Width' UITableViewCellContentView:0x7f938ce04790.width == 256 (active)>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x600001d804b0 AppName.NeverClearImageView:0x7f938ce140f0.width == 1.33333*AppName.NeverClearImageView:0x7f938ce140f0.height (active)>
Ячейка табличного представления выглядит, как и ожидалось. Кто-нибудь может указать, как решить эту ошибку?
Примечание. Я вижу, что вышеуказанная ошибка не отображается, если приоритет соотношения сторон установлен на 999 вместо 1000. Кто-нибудь может указать, почему это решает проблему?