gpt4 book ai didi

android - 如何设置图像适合每个具有纵横比的屏幕

转载 作者:行者123 更新时间:2023-11-29 23:19:20 25 4
gpt4 key购买 nike

我有一些图像,来自服务器,我对图像分辨率感到困惑。如何以宽高比在每个屏幕上完整显示每个图像。

我需要不裁剪地覆盖整个屏幕。图像在每个分辨率屏幕上都应该是完整的。

   <ImageView
android:id="@+id/photo_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:adjustViewBounds="true"
android:scaleType="fitXY"/>

来自服务器的图片

Picasso.with(context).load(shopDataForAdvs.get(position).getSrc()).fit().placeholder(R.drawable.product_image).error(R.drawable.product_image).into(imageView);

这里我有正在拉伸(stretch)的图像

enter image description here

最佳答案

决定将我的评论升级为答案...

每个图像都有纵横比。每部手机都有纵横比。无法保证这两个宽高比相同,因此您有以下三种选择:

1 - 拉伸(stretch)图像以适应。这就是 android:scaleType="fitXY" 和 Picasso fit() 调用正在做的事情。我真的不推荐这个选择,因为图像看起来“很奇怪”,但它是一个有效的选择。

2 - 裁剪图像以适合。这将是 android:scaleType="centerCrop" 和 Picasso centerCrop()。这将放大图像(不拉伸(stretch)它)直到图像的最小尺寸与手机尺寸相匹配,并在另一个尺寸裁剪图像。

3 - 信箱。这将是 android:scaleType="centerInside" 或 Picasso centerInside()。这将放大图像(不拉伸(stretch)它)直到图像的最大尺寸与手机尺寸匹配,并将 ImageView 的其余部分留空。

我推荐选项 2,或者可能是选项 3 和 2 的组合(加载图像而不裁剪,但让用户根据需要放大)。

关于android - 如何设置图像适合每个具有纵横比的屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54678741/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com