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