Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何清除视图中的图形,但保留背景色?_Android_Android Canvas_Android View_Android Custom View - Fatal编程技术网

Android 如何清除视图中的图形,但保留背景色?

Android 如何清除视图中的图形,但保留背景色?,android,android-canvas,android-view,android-custom-view,Android,Android Canvas,Android View,Android Custom View,我有自己的看法。在该视图的重写onDraw(…)方法中我使用提供的画布对象绘制某些东西 刷新视图后,我希望删除画布上先前完成的所有图形。为此,我打电话 Canvas.drawColor(Color.WHITE); 每次重新绘制视图之前和之前绘制的所有内容都将消失。到目前为止还不错 问题是,如果我在.xml中为该视图指定背景色(比如说灰色),视图的背景仍将是白色的,因为我总是在刷新视图时用白色“覆盖”背景色 如何解决该问题,并在保留背景色的情况下清除画布 我试过打电话 Canvas.drawCo

我有自己的看法。在该
视图的重写
onDraw(…)
方法中
我使用提供的
画布
对象绘制某些东西

刷新视图后,我希望删除
画布上先前完成的所有图形。为此,我打电话

Canvas.drawColor(Color.WHITE);
每次重新绘制
视图之前
和之前绘制的所有内容都将消失。到目前为止还不错

问题是,如果我在.xml中为该
视图
指定背景色(比如说灰色),
视图的
背景仍将是白色的,因为我总是在刷新
视图时用白色“覆盖”背景色

如何解决该问题,并在保留背景色的情况下清除画布

我试过打电话

Canvas.drawColor(Color.TRANSPARENT);

不幸的是,背景会变成黑色。

使用图层列表在后面设置背景,在前面设置图像如何。刷新视图后,加载带有图像移除的列表,仅在视图中显示背景

实际上我不确定是否理解正确,但解决方案可能是使用
视图。setDrawingCacheEnabled(true)
并使用
视图。getDrawingCache()