============问题描述============
利用下面的代码读取到sd卡内的图片,显示出来
setBackgroundDrawable(new BitmapDrawable(BitmapFactory.decodeFile("/storage/sdcard/bg.jpg")));
然后进行涂鸦,涂鸦完成后进行保存,只剩下我画笔画的那些涂鸦部分,背景图没保存
因为是在背景图上进行涂鸦的,如何让涂鸦和背景图一起保存
保存代码:
myCanvas.save(Canvas.ALL_SAVE_FLAG);
myCanvas.restore();
File f = new File("/storage/sdcard/","bg.jpg");
if(f.exists()){
f.delete();
}
FileOutputStream fos = null;
try {
fos = new FileOutputStream(f);
myBitmap.compress(Bitmap.CompressFormat.JPEG, 90, fos);
try {
fos.flush();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
fos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
============解决方案1============
可以在保存canvas之前加载历史背景图片,然后再加载一下要保存的界面,这样就可以保存住了