В Android imageView wrap_content не работает - PullRequest
0 голосов
/ 26 января 2020

У меня есть ImageView с match_parent шириной и wrap_content высотой. Когда я устанавливаю изображение размером 1080x500, ImageView занимает весь экран по ширине, но по какой-то причине занимает дополнительное место по высоте. Я знаю о AdjustViewbounds, но мне интересно, почему imageView занимает дополнительное место по высоте , У меня есть телефон Pixel (1080x1920).

вот мой макет

1 Ответ

1 голос
/ 26 января 2020

Проверьте это https://developer.android.com/reference/android/widget/ImageView.ScaleType.html

CENTER_CROP Масштабируйте изображение равномерно (сохраняйте соотношение сторон изображения) так, чтобы оба размера (ширина и высота) изображения были равны или больше соответствующего размера вида (минус отступ).

CENTER_INSIDE Равномерно масштабируйте изображение (сохраняйте соотношение сторон изображения), чтобы оба размера (ширина и высота) изображения были равны или меньше соответствующее измерение вида (минус заполнение).

FIT_CENTER Масштабирование изображения с использованием Matrix.ScaleToFit.CENTER

Matrix.ScaleToFit.CENTER: Вычислить масштаб, который будет поддерживать исходный sr * 1027. * соотношение сторон, но также гарантирует, что sr c полностью помещается внутри dst. По крайней мере одна ось (X или Y) будет соответствовать точно. Результат центрируется внутри dst.

FIT_END. Масштабировать изображение с помощью Matrix.ScaleToFit.END

Matrix.ScaleToFit.END: вычислить масштаб, который будет поддерживать исходное соотношение сторон sr c, но также гарантирует, что sr c полностью помещается внутри dst. По крайней мере одна ось (X или Y) будет соответствовать точно. END выравнивает результат по правому и нижнему краям dst.

FIT_START. Масштабирование изображения с использованием Matrix.ScaleToFit.START

Matrix.ScaleToFit.START: вычисление масштаба, в котором будет сохранен исходный sr. c формат изображения, но также гарантирует, что sr c полностью помещается внутри dst. По крайней мере одна ось (X или Y) будет соответствовать точно. START выравнивает результат по левому и верхнему краям dst.

FIT_XY. Масштабируйте изображение, используя Matrix.ScaleToFit.FILL

Matrix.ScaleToFit.FILL: независимо масштабируйте по X и Y, чтобы sr c точно соответствует dst. Это может изменить соотношение сторон sr c.

MATRIX Scale с использованием матрицы изображения при рисовании.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...