3

我使用以下语句将图像从资产复制到图库应用程序,效果很好:

MediaStore.Images.Media.insertImage(getContentResolver(), myBitmap, myTitle ,  myDescription);

图像是具有透明背景的 png 文件。当我将它们从资产加载到例如 ImageView 时,它们会正确显示。

问题是,以前导入图像的透明背景在画廊中变成了纯黑色。

png 是由 gimp 创建的 png24。我还尝试了由 Apple 的预览应用程序添加的透明 gif 和带有透明度的 png,结果相同。

为什么会发生?

4

1 回答 1

1

我知道这是一个老问题,但我也遇到了同样的问题。问题是MediaStore.Images.Media.insertImage存储文件的 MIME_TYPE 为“image/jpeg”,而 jpeg 不支持透明度。

一种解决方案是制作您自己的使用另一种图像格式的内容提供程序。毕加索图像库可能也值得一看。

于 2015-06-26T13:25:10.927 回答