0

在我的 android 代码中,onDraw 方法在 5 毫秒后被一次又一次地调用。我想在图像上重绘并希望一个图像在一个位置上是静态的。但问题是当再次调用 OnDraw 时,它会重绘两个图像。我希望它只重绘一个图像而不是另一个图像。这是我的 OnDraw 方法

protected void onDraw(Canvas canvas) {
        canvas.drawBitmap(mVolleyBall, cx, cy, null); // Image to be redrawn

            canvas.drawBitmap(red,x, y, null); //  Static image
}
4

2 回答 2

0

每当调用 OnDraw 时,它将绘制该方法中定义的内容。所以你需要在两个图像中定义坐标,它们需要放置在哪里。根据您的要求,需要修复一个图像的坐标,而其他图像将使用新的 x,y 更新。

于 2013-09-03T13:39:06.740 回答
-1

我的建议是,创建一个只让它发生一次的布尔变量。像这样:

`protected void onDraw(Canvas canvas) {
     canvas.drawBitmap(mVolleyBall, cx, cy, null); // Image to be redrawn
        if(!once){
        canvas.drawBitmap(red,x, y, null); //  Static image
        once = true        
        }
}`

变量一旦在初始化中的某处被声明为 false。

于 2013-06-15T15:30:30.790 回答