android 图片透明色变成黑色解决办法

原因是因为图片进行缓存到本地,再取出时,图片格式被压缩错误。

比如,原图为png的类型,但是

bmp.compress(Bitmap.CompressFormat.JPEG, 100,
outputStream);

被默认为了JPEG。所以透明的地方肯定出现错误,比如变黑色。

所以在缓存图片时最好先进行文件名判断。


如下代码:

if (!url.substring(url.lastIndexOf("/") + 1).toUpperCase().contains("PNG")) {
success = bmp.compress(Bitmap.CompressFormat.JPEG, 100,outputStream);
				} else {
					success = bmp.compress(Bitmap.CompressFormat.PNG, 100,
							outputStream);
				}

这样从缓存中取出来的时候就会不会再出现黑框!。

你可能感兴趣的:(android 图片透明色变成黑色解决办法)