机器人: 在图像视图中拉伸图像以适应屏幕

我有一个 imageview,它的高度和宽度设置为 fill_parent,而 linearlayout的值设置相同。所以我想这应该可以让我的图像适合屏幕。但它只适合大约80% (边缘顶部和底部在横向模式)。

我尝试了以下代码,但没有成功:

Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();


imgView.setMinimumWidth(width);
imgView.setMinimumHeight(height);


imgView.setMaxWidth(width);
imgView.setMaxHeight(height);

还有别的办法吗?

207745 次浏览

按照语法改变用法:

imgview.setScaleType(ScaleType.FIT_XY);

OR

从 xml 使用改为:

 android:scaleType="fitXY"

输入布局 android:scaleType="fitXY"的 xml 文件
备注: 这适用于当图像设置为 android:src="..."而不是 android:background="..."时,因为背景默认设置为拉伸并适合视图。

尝试使用:

imageview.setFitToScreen(true);
imageview.setScaleType(ScaleType.FIT_CENTER);

这将适合您的图像视图与屏幕的正确比例。

使用:

ImageView.setAdjustViewBounds(true);

可接受的答案是完美的,但是如果您想从 xml 执行此操作,则可以使用 android:scaleType="fitXY"

我在 XML 文件中使用了这段 android:scaleType="fitXY"代码。

只需将 ImageView 的高度和宽度更改为 wraps _ content 并使用

SetScaleType (ImageView. ScaleType.FIT _ XY) ;

在你的代码里。

如果使用 android:scaleType="fitXY",则必须指定

android:layout_width="75dp"android:layout_height="75dp"

如果使用 wrap _ content,它将不会延伸到您所需要的内容

<ImageView
android:layout_width="75dp"
android:layout_height="75dp"
android:id="@+id/listItemNoteImage"
android:src="@drawable/MyImage"
android:layout_alignParentTop="true"
android:layout_alignParentStart="true"
android:layout_marginStart="12dp"
android:scaleType="fitXY"/>

用于 XML 安卓系统

android:src="@drawable/foto1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"

也许这无关紧要。 我在 android 工作室就是这么做的。

把它放在 xml 中:

android:adjustViewBounds="true"


android:scaleType="centerCrop"

调整 ViewBound = 将根据比例适合图像

ScaleType = 裁剪掉所有的空白

然后,设置

layout_width = match_parent
layout_height = warp_content

会变成这样