我的代码有问题。当我尝试旋转文本时,一切正常,但我想恢复 Canvas ,所以我调用 canvas.restore();
当我这样做时,我的应用程序将立即关闭...
我的代码的一部分:
触摸屏幕的一部分:
if (wahrheitswert1 == true) {
x = 480;
y = 100;
// draw bounding rect before rotating text
Rect rect = new Rect();
canvas.translate(x, y);
// undo the translate
canvas.translate(-x, -y);
// rotate the canvas on center of the text to draw
canvas.rotate(-180, x + rect.exactCenterX(), y + rect.exactCenterY());
// draw the rotated text
canvas.drawText("Spieler1 touch", x, y, paint);
//undo the rotate
//canvas.restore();
wahrheitswert1 = false;
canvas.restore();
}
如果我不恢复位图,我的背景图像将从屏幕的其他站点复制。 感谢您的帮助
最佳答案
虽然我没有使用很多 Canvas ,但我不知道恢复上下文之前将其保存在哪里。我非常确定要对上下文进行恢复,您首先必须保存上下文。
关于java - 在android上开发游戏: rotation of text in a canvas,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7409259/