私は単純なペイントアプリケーションをやろうとしていますが、onDrawを呼び出すたびに以前にあったものが消去されます。onDraw()を呼び出すたびにAndroidキャンバスが消去されないようにするにはどうすればよいですか?
Paint paint = new Paint();
int c = getPaintFromActivityClass();
paint.setColor(c);
Path path = new Path();
boolean first = true;
for(Point point : points){
if(first){
first = false;
path.moveTo(point.x, point.y);
}
else{
path.lineTo(point.x, point.y);
}
}
canvas.drawPath(path, paint);
私は新しいに「古い」パスを追加してみました:私の上の引き分けで、私は、次の(ポイントがxとyのint型、および「ポイント」を持つクラスですされたリストのポイントを)やっています各パスを本質的に互いに連結し、別々の(接続されていない)パスを作成しました。しかし、onDrawでは、別のビューで変更されているペイントの色も設定しています。お互いにパスを追加したとき、色を変更するとすべてのパスの色が変更されました。
パスをビットマップに描画してからこのビットマップを描画します – Selvin
@セルヴィン私は正確に考えていましたが、どのようにパスをビットマップに描画しますか? – mergesort
クイック検索は私にこれを与えましたhttp://stackoverflow.com/questions/4013725/converting-a-canvas-into-bitmap-image-in-android – Selvin