0

私のAndroidコードでは、5ms後にonDrawメソッドが何度も呼び出されます。画像を再描画し、1 つの画像を 1 つの位置で静止させたい。しかし、問題は、OnDraw が再度呼び出されたときに両方の画像を再描画することです。他の画像ではなく、1つの画像のみを再描画したい。これは私の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 が呼び出されるたびに、そのメソッドで定義されたコンテンツが描画されます。したがって、配置する必要がある両方の画像で座標を定義する必要があります。要件に応じて、1 つの画像の座標を修正する必要があり、他の画像は新しい 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 に答える