0
キャンバスに円を描き、そのたびに新しいサークルを描きたいと思います。これをどうやってやりますか?私がすることができるのは、サークルを周りに移動することだけです。ビットマップAndroidで新しいサークルを描く
-CanvasTestクラス
package canvas.test;
import android.app.Activity;
import android.os.Bundle;
public class CanvastestActivity extends Activity {
/** Called when the activity is first created. */
float x = 80;
float y = 20;
float r = 15;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Draw2D d = new Draw2D(this, x, y, r);
try {
Thread.sleep(100);
x++;
y++;
} catch(InterruptedException e) {}
setContentView(d);
}
}
--Draw2Dクラス
package canvas.test;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.View;
public class Draw2D extends View {
float x;
float y;
float r;
public Draw2D(Context context, float x, float y, float r) {
super(context);
this.x = x;
this.y = y;
this.r = r;
}
@Override
protected void onDraw(Canvas c) {
super.onDraw(c);
Paint paint = new Paint();
paint.setStyle(Paint.Style.FILL);
paint.setColor(Color.WHITE);
c.drawPaint(paint);
paint.setAntiAlias(true);
paint.setColor(Color.BLUE);
c.drawCircle(x, y, r, paint);
}
}
これは私の最も最近のテストです。なぜ今サークルは動くのだろうか?それはまったく動かない。
私はそれを使用していません。私がやっているのは、キャンバスに空の白いビットマップを描画して、そこに円を描こうとしています。 – linuxer
私はonDrawで図面をやっていますが、別の場所に描画する必要がありますか? – linuxer
いくつかのサンプルコードを投稿した方が少し見やすくなりますが、描画するたびに白いビットマップを描画していればサークルが消去されます。サークルのすべての場所を保存し、すべてのリクエストをすべて描画するか、背景を最初にペイントしてからペイントするたびに新しい円の場所をペイントする必要があります。 – broschb