我有一个图像(320x210),我从xml文件中的drawable文件夹中调用图像...在纵向模式下它的工作正常,但是当我将设备更改为LANDSCAPE时,图像不适合prorerly .. ??如何解决这个问题.. ?? 这是我试过的xml代码
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="fitCenter"(here i tried with "fitXY" also)
android:adjustViewBounds="true"
android:src="@drawable/srkpic"/>
我也尝试过这种方法 protected void onSizeChanged(int w,int h,int oldW,int oldH) { } 但只有当我们使用不符合我要求的“View”扩展时,此方法才可用。 感谢。
答案 0 :(得分:2)
为srkpic提供res/drawable-land
下横向大小的备用资源。
答案 1 :(得分:2)
使用下面的代码更改您的方向,其中imgHeaderFooter是您的位图
imgHeaderFooter.setDensity(1/2);
int width = imgHeaderFooter.getWidth();
int height = imgHeaderFooter.getHeight();
int screenWidth = UseMe.getDispWidth()/2;
float scaleWidth = ((float) screenWidth) / width;
float scaleHeight = ((float) height) / height;
Matrix matrix = new Matrix();
matrix.postScale(scaleWidth,scaleHeight);
Bitmap resizedBitmap = Bitmap.createBitmap(imgHeaderFooter,0,0,width,height,matrix,true);
BitmapDrawable bmd = new BitmapDrawable(resizedBitmap);
imageView = new ImageView(this);
imageView.setScaleType(ScaleType.FIT_XY);
imageView.setImageDrawable(bmd);