Resize image to full width and fixed height with Picasso
Измените размер изображения на всю ширину и фиксированную высоту с помощью Picasso
У меня есть вертикальное линейное представление, где одним из элементов является ImageView загруженный с помощью Picasso. Мне нужно увеличить ширину изображения до полной ширины устройства и отобразить центральную часть изображения, обрезанную на фиксированную высоту (150dp). В настоящее время у меня есть следующий код:
Какие значения я должен ввести в screenWidth и imageHeight (= 150dp)?
Переведено автоматически
Ответ 1
Вы ищете:
.fit().centerCrop()
Что это значит:
fit - подождите, пока ImageView не будет измерено, и измените размер изображения, чтобы оно точно соответствовало его размеру.
centerCrop - масштабируйте изображение с соблюдением соотношения сторон, пока оно не заполнит весь размер. Обрезайте либо верх и низ, либо левую и правую части, чтобы оно точно соответствовало размеру.
Ответ 2
В некоторых случаях функция fit() бесполезна. Перед этим вы должны дождаться окончания измерения ширины и высоты. Таким образом, вы можете использовать globallayoutlistener . например;