0

キャンバスにビットマップを描いています。このビットマップを回転させて位置を変更しようとしています。

そのために、このコードを使用しています:

 matrix.setTranslate(pos_x, 15);
 matrix.setRotate(30);
 canvas.drawBitmap(bitmap, matrix,paint);

そして、これはすべてループ内にあるため、変数「pos_x」が増加します。

しかし、マトリックスは setTranslate と setRotate の両方の行を受け入れないようです。setTranslate をコメント アウトすると、ビットマップが回転します。回転をコメントアウトすると、ビットマップが移動します。しかし、彼らは一緒に動作しません !

私は何をすべきか?

ありがとう!

4

2 に答える 2

1

問題はおそらく「セット」という言葉の意味にあります。

マトリックスを上書きして設定する代わりに、段階的に調整する必要があります。最初に setTranslate を実行してから Rotate を実行するか、setRotate を実行してから Translate を実行する必要があります。

于 2012-10-29T17:18:06.273 に答える