在翻译用于绘制位图的矩阵时,它会绘制多个位图

时间:2011-07-23 21:19:26

标签: android matrix bitmap translate

在我的Android项目中,我有一个矩阵用于在画布上绘制位图。在我的drawFrame方法中,我在Y方向上转换矩阵,所以看起来位图正在向上移动。它确实向上移动,但也在前一个位置绘制,留下多个自身。这是我的drawFrame代码:

Canvas canvas = null;
canvas = holder.lockCanvas();

Matrix moveMatrix = new Matrix ();
moveMatrix.postTranslate(0, 10);
matrix.preConcat(moveMatrix);

canvas.drawBitmap(bitmap, matrix, null);

holder.unlockCanvasAndPost(canvas);

“matrix”是全球Matrix成员。

有谁知道为什么这会在屏幕上留下“裸奔”的位图踪迹?

谢谢!

我忘了提到每次位图移动时,每个先前的位图位置似乎在y方向上下移动。因此它最终得到一串位图,看起来像是在上下抖动。这意味着每个帧都必须重绘每个位图,否则它们都会静止不动。

1 个答案:

答案 0 :(得分:1)

您需要在位图的前一个位置清除画布:)