私はAndroidアプリを構築していますが、単純なことに悩まされています。Canvasオブジェクトを別のCanvasオブジェクトに「マージ」するなど、どのように描画(または「追加」)するのですか?
それが不可能な場合、それを行うための最良の解決策は何ですか?
ありがとう!
私はAndroidアプリを構築していますが、単純なことに悩まされています。Canvasオブジェクトを別のCanvasオブジェクトに「マージ」するなど、どのように描画(または「追加」)するのですか?
それが不可能な場合、それを行うための最良の解決策は何ですか?
ありがとう!
これは完全にあなたの実装に依存します。
各Canvasが各フレームの配列(形状など)から直接オブジェクトを描画する場合は、一方の配列をもう一方の配列に追加するだけです。このように、Canvasを大幅に変更する必要はなく、1つの配列を別の配列に追加するだけで済みます(おそらく、ArrayList
ここに移動する方法です)。
上記が当てはまらない場合は、さらに大幅な変更が必要になる場合があります。同様の問題が発生したときcommitChanges()
、既存のCanvasに一連の変更を追加する(上に線を追加するなど)という新しいメソッドを作成しました。
Bitmap bmp = Bitmap.createBitmap(width, height, Bitmap.Config.RGBA_8888);
。Canvas workingDrawing = new Canvas(bmp);
。canvas.drawBitmap(yourDrawnBitmap, 0.0f, 0.0f, null);
。直面する困難は、あるCanvasから別のCanvasにデータを転送することだと思います。ただし、実装に関係なく、上記の方法のいずれかが効果的に機能するはずです。