В моем проекте 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 каждый раз, когда растровое изображение перемещается. Таким образом, это заканчивается строкой растровых изображений, которые выглядят так, как будто они дрожат вверх и вниз. Это означало бы, что каждое растровое изображение должно было бы перерисовываться в каждом кадре, иначе все они стояли бы на месте.