UIImageView contentMode Scale Aspect Fill растягивает изображение (не имеет значения) - PullRequest
2 голосов
/ 10 апреля 2020

Я чувствую, что схожу с ума. Я установил свой UIImageView.contentMode = UIViewContentModeScaleAspectFill, но он все еще растягивает изображение. (Это не проблема отсечения, это растяжение изображения.)

Это даже показывает, что оно растянуто в моей Раскадровке. Я создал изображение зеленых и коричневых квадратов для проверки:

enter image description here

Я добавил UIImageView в свою раскадровку. Я добавил изображение к этому виду изображения, и когда я устанавливаю Aspect FIT, тогда он делает то, что должен (сохранить соотношение сторон и показать все изображение, пропуская при необходимости), но когда я переключаюсь на Aspect FILL, тогда это растягивает изображение. Вот анимированный GIF из моей раскадровки:

enter image description here

Что, черт возьми, происходит? Это в раскадровке в проекте, которому несколько лет. Если я создаю новый проект с совершенно новой раскадровкой, то этого безумия не произойдет.

Есть ли в моей основной раскадровке что-то, что вызывает эту ошибку?

Любая помощь приветствуется , Я чувствую, что принимаю сумасшедшие таблетки.

1 Ответ

1 голос
/ 10 апреля 2020

Это не растягивает. Он заполняет область, сохраняя соотношение сторон. Если бы он был , растягивая его, горизонтальная белая линия посередине не была бы такой же высокой, как широкие вертикальные белые линии.

Установите режим содержимого "Scale To Fill", чтобы увидеть как бы это выглядело, если бы было растянуто (вот так):

Scale To Fill

Обратите внимание на разницу в толщине линии средняя белая линия, в отличие от того, когда она установлена ​​в Aspect Fill:

Aspect Fill With Clip to Bounds Enabled

Если вы отключите Clip to Bounds в представлении изображения, тогда вы можете Посмотрите, как изображение обрезается, когда установлено Aspect Fill:

Aspect Fill With Clip to Bounds Disabled

Если вы хотите показать полное изображение на всю ширину, сохраняя при этом аспект Коэффициент, вам придется увеличить высоту этой ячейки, чтобы приспособить высоту изображения.

...