Как установить ограничение автоматического размещения, чтобы высота UIImageView была равна высоте суперпредставления? - PullRequest
0 голосов
/ 18 декабря 2018

Я создал UIView, который состоит из 3 UILabel с и 1 UIImageView, как показано ниже -

View

UILabel s имеют lines, установленное в 0, чтобы высота UILabel s изменялась динамически

Я добавил ограничения, так что высота изображения зависит от высоты UILabel s, как показанониже -

enter image description here

Я установил ширину UIImageView на постоянную 100.

Я хотел бы установитьограничение на UIImageView такое, что высота UIImageView равна высоте всего вида.

Я попытался добавить ограничение "Равные высоты" для UIImageView и всего вида.Я заметил, что высота всего вида зависит от высоты UIImageView, а не то, что высота UIImageView зависит от всего вида, как я хочу.

Может кто-нибудь указатькак я могу добавить ограничение к UIImageView, чтобы его высота равнялась его суперпредставлению, но высота суперпредставления не зависит от UIImageView?

Правка - На изображении ниже показано, что проблема заключается в том, чтоЯ сталкиваюсь.Когда для изображения установлено значение UIImageView, высота представления изменяется.Я хочу, чтобы высота UIImageView была равна высоте вида, но я не хочу, чтобы высота вида зависела от высоты UIImageView

enter image description here

Ответы [ 3 ]

0 голосов
/ 18 декабря 2018

Похоже, вам нужно уменьшить vertical content compression resistance при просмотре изображения.

Установите его на очень низкое значение, например 100, и повторите попытку.

0 голосов
/ 18 декабря 2018

Фактически сопротивление сжатию по умолчанию вашего UIImageView равно 750, а объем содержимого root UIView равен 250. Это означает, что движок AutoLayout размещает все правильно.Вы можете изменить сопротивление вертикальному сжатию до значения ниже 250 (UILayoutPriority.defaultLow - 1) для достижения желаемой разметки.

0 голосов
/ 18 декабря 2018

Полагаю, вы не добавили ограничение высоты в суперпредставление.Установите ограничение высоты для суперпредставления, а затем добавьте ограничение «Равные высоты» для UIImageView и всего представления.

...