我从网站下载一个位图,然后在我的应用程序中显示它。每当我下载此图像并将其设置为ImageView时,实际图像上方或下方总会有大量额外空间。这个额外的空间是ImageView的一部分,只有在我将ImageBitmap设置为下载的位图之后才有。 所以,这让我觉得额外的空间在某种程度上是位图的一部分。 但是,当我在Webview中下载相同的图像时,没有多余的空间。
如果您对可能发生这种情况有任何想法,请告诉我们!如果您需要更多信息,请与我们联系,谢谢。
编辑:这是我的代码获取位图:
InputStream in = null;
Message msg = Message.obtain();
msg.what = 1;
try{
in = openHttpConnection(_url);
if (in != null)
{
Bitmap bit = BitmapFactory.decodeStream(in);
Bundle b = new Bundle();
b.putParcelable("bitmap", bit);
msg.setData(b);
in.close();
}
} catch (IOException e1) {
e1.printStackTrace();
}
_handle.sendMessage(msg);
这就是我对ImageView使用的内容,我从上面的代码中得到了位图,并且:
imageV.setImageBitmap(comic);
编辑2: 在尝试使用来自不同网站的其他图像后,我发现这个空白区域并不总是存在。考虑到这一点,并且代码可能没有任何问题,是否有关于删除这些额外空间的建议,因为它没有出现在网上的实际图像中或webview中?
答案 0 :(得分:0)
imageSize = din.readInt();
imageName = din.readUTF();
byte b [] = new byte [imageSize]; din.readFully(B);
bmImg = BitmapFactory.decodeByteArray(b,0,b.length);
//这对我有用.... // din是DataInputStream对象。