Android 在位图上绘制背景,其中i';我要画一个我';我要导出到一个文件

Android 在位图上绘制背景,其中i';我要画一个我';我要导出到一个文件,android,canvas,view,bitmap,drawable,Android,Canvas,View,Bitmap,Drawable,我正在将视图导出到文件中 我的问题是,我使用全息光主题,但导出的文件有一个黑暗的背景 守则: Bitmap b = Bitmap.createBitmap(totalWidth, totalHeight, Bitmap.Config.ARGB_8888); Canvas mCanvas = new Canvas(b); miVista.draw(mCanvas); FileOutputStream fos = new FileOutputStream(file); b.com

我正在将视图导出到文件中

我的问题是,我使用全息光主题,但导出的文件有一个黑暗的背景

守则:

Bitmap b = Bitmap.createBitmap(totalWidth, totalHeight, Bitmap.Config.ARGB_8888);
Canvas mCanvas = new Canvas(b);
miVista.draw(mCanvas);          
FileOutputStream fos = new FileOutputStream(file);
b.compress(Bitmap.CompressFormat.JPEG, 100, fos); 
我尝试了很多方法来用黑色以外的其他颜色来绘制它,比如
drawcolor
setpixels
,等等,但我找不到解决问题的正确答案


清除画布,例如使用

mCanvas.drawColor(Color.WHITE); 

然后它将有白色的背景。你希望有什么样的背景?

我在另一篇文章中找到了解决方案:


解决方案是使用可绘制对象…

我担心Canvas对象没有clear方法。这不是我期望的背景,而是我想要的背景;)。我的问题是,因为我使用全息光主题,视图的颜色是暗的。所以,我在黑色背景下得到的结果并不好。呃,我是说drawColor,对不起。所以如果你先使用drawColor(Color.WHITE),然后在同一张画布上绘制视图(miVista),它仍然显示为黑色?我不知道为什么,但是的,就是这样。你能给我们看一张图像(截图)吗你现在想要什么和得到什么?我在图片上添加了两个链接(我需要声誉10来放置图片)。我想我正在寻找一个简单的解决方案,也许,它不会像我预期的那么容易。
Bitmap b = Bitmap.createBitmap(totalWidth, totalHeight, Bitmap.Config.ARGB_8888);
Canvas mCanvas = new Canvas(b);
Drawable bgDrawable =miVista.getBackground();
if (bgDrawable!=null) 
    bgDrawable.draw(mCanvas);
else 
    mCanvas.drawColor(Color.WHITE);
miVista.draw(mCanvas);