android:在imageview中拉伸图像以适应屏幕
我有一个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);
任何其他的想法?
使用imgview.setScaleType(ScaleType.FIT_XY);
在你的布局的xml文件中给出android:scaleType="fitXY"
PS:这适用于图像设置为android:src="..."
而不是android:background="..."
因为背景默认设置为伸展和适合视图。
用这个:
ImageView.setAdjustViewBounds(true);
如果你使用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:scaleType="fitXY"
我在Xml文件中使用了这个android:scaleType="fitXY"
代码。
只需将ImageView的高度和宽度更改为wrap_content并使用即可
exampleImage.setScaleType(ImageView.ScaleType.FIT_XY);
在你的代码中。
尝试使用:
imageview.setFitToScreen(true); imageview.setScaleType(ScaleType.FIT_CENTER);
这将使您的imageview以正确的比例适合屏幕。