0

我在视图中定义了一个自定义画布,运行时它会绘制背景然后绘制一些图片。背景也是图像。触发onTouchEvent方法时,将刷新画布,然后绘制背景然后几张图片,但会留下后期图片在背景上的移动痕迹,我不知道如何清除移动痕迹,如果我给背景分配颜色,就不会留下痕迹,有人可以帮我解决这个问题吗?非常感谢。: D

添加:

canvas = new Canvas(bgbitmap);

画背景

canvas.drawColor(selectedColor);

如果使用 drawBitmap 绘制背景原因:

//                     canvas.drawBitmap(bgbitmap, 0, 0, null);

// draw picutre
                    for (int i = fbmpCount - 1; i >= 0; i--) {
                        FreeBitmap fb = findFreeBmpByPriority(i);
                        if (fb != null)
                            this.canvas.drawBitmap(fb.getBmp(), fb.getXpoint(), fb.getYpoint(),
                                    null);
                    }

        this.invalidate();

// onDraw method
    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        canvas.drawBitmap(bgbitmap, 0, 0, null);
    }
4

1 回答 1

0

根据我的理解,您必须先清除画布,然后再重新绘制。

Canvas.drawColor(Color.WHITE)
于 2012-12-20T02:55:28.167 回答