在我的 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);
“矩阵”是一个全局矩阵成员。
有谁知道为什么这会在屏幕上留下“条纹”的位图痕迹?
谢谢!
我忘了提到每次位图移动时,每个先前的位图位置似乎都会在 y 方向上上下移动。所以它最终得到了一串位图,看起来像是上下抖动。这意味着每帧都必须重新绘制每个位图,否则它们都会静止不动。