从canvas中保存png的代码无法正常运行

时间:2015-10-31 06:23:46

标签: android android-canvas android-view

我正在保存画布上绘制的所有内容。它可以完美地从画布中保存第一张图,但它始终保存我从画布中保存的第一个对象。这是我从画布中保存png的代码。

View content = paint.canvas;
content.setDrawingCacheEnabled(true);
content.setDrawingCacheQuality(View.DRAWING_CACHE_QUALITY_HIGH);
Bitmap bitmap = content.getDrawingCache();
FileOutputStream ostream;
try {
    ostream = new FileOutputStream(save_file);
    bitmap.compress(Bitmap.CompressFormat.PNG, 100, ostream);
    ostream.flush();
    ostream.close();
    Toast_Display.short_message(getActivity(), "File saved Successfully");
    dialog_save_file.dismiss();
    MainScreen.mFiles.setListView();
} catch (Exception e) {
    dialog_save_file.dismiss();
    Toast_Display.short_message(getActivity(), "An err0r occured while saving this file");
}

1 个答案:

答案 0 :(得分:1)

您已通过setDrawingCacheEnabled(true)启用了图形缓存,但尚未清除它。

执行setDrawingCacheEnabled(false)后,您需要执行getDrawingCache()