我很沮丧地搜索几乎每个谷歌页面都有这个问题。
我需要将我的位图保存到文件中。 我已经多次使用过这种方法而没有任何问题。但现在我遇到了问题。
我保存的位图是一个透明且具有.png格式的圆形图像,我将其放在res文件夹中。但是我的黑色部分代替了透明部分。
这是我用来保存位图的代码。
void saveImage(Bitmap bmp) {
try {
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.PNG, 100, bytes);
finalImg = new File(Environment.getExternalStorageDirectory(),
"emoticon_temp" + ".png");
finalImg.createNewFile();
FileOutputStream fo = new FileOutputStream(finalImg);
fo.write(bytes.toByteArray());
fo.flush();
fo.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
我将此位图保存为文件,因为我需要共享此图像并分享图像,我需要Stream Uri。
如果您有任何其他想法来共享位图,请告诉我。