Разница между UIViewContentModeScaleAspectFit и UIViewContentModeScaleToFill?

Ответы:

185

Если вы говорите о UIViewContentMode , следующее из документа Doc .

UIViewContentModeScaleToFill

Масштабирует содержимое по размеру самого себя, изменяя при необходимости соотношение сторон содержимого.

UIViewContentModeScaleAspectFit

Масштабирует содержимое в соответствии с размером представления, сохраняя соотношение сторон. Любая оставшаяся область границ представления прозрачна.

UIViewContentModeScaleAspectFill

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

Пустой стек
источник
Каков пример того, где может произойти прозрачность или обрезка? Я представляю прямоугольник, и мне кажется, что это предложение никогда не будет задействовано.
Praxiteles
Пракситель, я не совсем понимаю ваш вопрос. Но из контекста моего ответа выше, возможно, произойдет отсечение в UIViewContentModeScaleToFill и UIViewContentModeScaleAspectFill, если соотношение изображения не соответствует соотношению imageView. Пожалуйста, поправьте меня, если я ошибся с вашим вопросом. Спасибо.
EmptyStack
542

Вы можете увидеть различия между режимами содержимого здесь:

введите описание изображения здесь

Режим перерисовки работает как режим масштабирования до заливки. Но есть разница в том, как они рисуются при изменении геометрии вида. В режиме «Масштабирование до заливки» используется уже обработанный контент, а в режиме «Перерисовка» контент снова отображается.

Erkanyildiz
источник