android 如何将更新的布局保存为png文件

ljsrvy3e  于 2023-05-12  发布在  Android
关注(0)|答案(1)|浏览(140)

我使用下面的代码将布局的内容保存在png文件中。但是当布局的内容发生变化时,我会再次调用这个函数,并将其保存在一个新文件中。我看到它已经保存了以前的内容。

picLayout.setDrawingCacheEnabled(true);
picLayout.buildDrawingCache();
Bitmap bmCA = picLayout.getDrawingCache();

File file = new File(Environment.getExternalStorageDirectory(),folder_1_n);
if (!file.exists()){
    file.mkdirs();}

    if (file.exists()){
        FileOutputStream uotputstreem_c;

        File out_c_file= new File(file,c_filename);
        try{
            uotputstreem_c = new FileOutputStream(out_c_file);
            bmCA.compress(Bitmap.CompressFormat.PNG,100,uotputstreem_c);
            uotputstreem_c.flush();
            uotputstreem_c.close();
            if(!folder)Toast.makeText(this, "successful", Toast.LENGTH_SHORT).show();
        }catch (Exception e){
            Toast.makeText(this, "Failed", Toast.LENGTH_SHORT).show();
        }}else {
        Toast.makeText(this, "Failed", Toast.LENGTH_SHORT).show();
    }
gcmastyq

gcmastyq1#

要确保保存的图像反映布局的更新内容,可以尝试在捕获图形缓存之前添加以下代码:
picLayout.destroyDrawingCache();
这将有助于清除以前的内容并准确地捕获新布局。

相关问题