图片调整大小不适用于Android

时间:2013-12-19 18:13:25

标签: android bitmap android-imageview android-image bitmapimage

我有来自服务器的1024 x 900图像。我想得到这张图片的一半。

我使用此代码

img.setImageBitmap(Bitmap.createBitmap(bitmap,0,bitmap.getWidth()/2, bitmap.getWidth(), bitmap.getHeight()/2));

但是当我这样做时,我有这个错误

y+height must be <=bitmap.getHeight

这里我应该做什么没有得到例外。

2 个答案:

答案 0 :(得分:2)

参数应该是位图,起始x和y,宽度和高度。然后尝试:

img.setImageBitmap(Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth() / 2, bitmap.getHeight() / 2));

答案 1 :(得分:1)

但是使用这些值,您可以获得图像的意外部分,或者更可能是错误。

如果您查看docs of the function,则可以看到此签名:

createBitmap(Bitmap source, int x, int y, int width, int height)

所以,你必须指出起点的x和y,以及你想要的矩形的宽度和高度。

如果你想要上半部分,你可以使用:

img.setImageBitmap(Bitmap.createBitmap(bitmap, 0, 0, bitmap.getWidth()  , bitmap.getHeight() / 2));

如果您想要下半场,请使用:

img.setImageBitmap(Bitmap.createBitmap(bitmap, 0, bitmap.getHeight() / 2, bitmap.getWidth()  , bitmap.getHeight() / 2));