ImageView - > getScaling /图像位置(缩放发生的位置)

时间:2013-05-20 10:49:19

标签: android android-layout android-imageview

我想获得ImageView中包含的图像的确切位置和大小或至少缩放,因为我需要在其上面使用相同大小的另一个ImageView进行绘制。

我的原始图像大约是1680x1050,并以“fitcenter”作为缩放类型显示在imageview上。它缩放正确。

我尝试了不同的东西来获得绘制图像的缩放/界限:

imgv.getDrawable().getBounds();返回图像的原始大小(1680x1050) imgv.getDrawingRect(outRect);为我提供了imageview的大小,但不是它内容的大小 imgv.getScaleX();返回1.0,怎么会这样? (图像缩放正确,大约1000x500px) imgv.getMatrix().getValues(values); float scaleX = values[Matrix.MSCALE_X]; float scaleY = values[Matrix.MSCALE_Y];还说没有应用缩放,为什么?

我现在有点绝望了,非常感谢你的帮助。

缩放和定位在哪里发生?如何获得?


编辑,附加信息:

ImageView的内容是这样创建的:

bitmap = Bitmap.createBitmap(imgWidth, imgHeight, Config.ARGB_8888);
imgv.setImageBitmap(bitmap);
canvas = new Canvas(bitmap);

然后我同时做两件事,在画布上绘图并直接用bitmap.setPixels(....)设置位图的像素,然后是ImageView.invalidate。

0 个答案:

没有答案