【问题标题】:How to clear drawings on View but preserve background color?如何清除视图上的图纸但保留背景颜色?
【发布时间】:2014-07-13 15:39:56
【问题描述】:

我有一个自定义视图。在View 的覆盖onDraw(...) 方法中,我使用提供的Canvas 对象绘制某些东西。

刷新视图后,我想删除Canvas 上之前已完成的所有绘图。为此,我打电话给

Canvas.drawColor(Color.WHITE);

每次重绘 View 之前,之前绘制的所有内容都消失了。到目前为止一切顺利。

问题是如果我在 .xml 中为 View 指定背景颜色(比如说灰色),View's 背景仍然是白色,因为我总是“覆盖”背景刷新View 时用白色着色。

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

我试过打电话

Canvas.drawColor(Color.TRANSPARENT);

不幸的是,然后背景变黑了。

【问题讨论】:

    标签: android android-canvas android-view android-custom-view


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

      其实我不确定我是否理解正确,但解决方案可能是使用view.setDrawingCacheEnabled(true) 并使用view.getDrawingCache()...

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-07-06
        • 1970-01-01
        • 1970-01-01
        • 2014-11-06
        • 1970-01-01
        • 2011-01-09
        相关资源
        最近更新 更多