メソッドで switch ケースを使用しようとしているonDraw
ので、ボタンが押されたときに何を描画するかが変わります。ボタンが機能し、変数「b1」が変更されていることは知っていますが、onDraw
描画するものは変更されません。コードのさまざまな部分で .invalidate() を使用してみましたが、何も変更されません。これonDraw
は、プログラムの実行時に最初にロードされるケースのみを使用します。onDraw()
「b1」の値を変更するメソッド内に update() メソッドを入れてみましたが、うまくいきません。
public void onDraw(Canvas canvas) {
canvas.drawColor(Color.BLACK);
update();
switch (b1){
case 0:
canvas.drawBitmap(offtank, 15, 550, null);
break;
case 1:
for (Sprite sprite : sprites) {
sprite.onDraw(canvas);
}
canvas.drawBitmap(ontank, 15, 550, null);
break;
}
}
これはおそらく単純なことですが、私は初心者であり、完全に困惑しており、これについてはどこにも何も見つかりません。また、スイッチ ケースの代わりに if ステートメントを使用してみましたが、それでも同じ問題が発生します。