スピードメーターをプログラムして、後で GPS データなどを入力しようとしています。針 (480x480) をソースとして表示し、速度計を背景画像 (480x480) として表示する ImageView があります。ここで、次のコードで針を回転させてみます: (1 単位 [km/h] は 2.25° の角度です)
float angle = (float) (deltaspeed * 2.25);
matrix.postRotate(angle);
Bitmap bMapRotate = Bitmap.createBitmap(bMap, 0, 0, bMap.getWidth(), bMap.getHeight(),matrix, true);
imgNeedle.setImageBitmap(bMapRotate);
それは今のところうまくいきます。しかし、針が回っている間、レイアウトのサイズは妥協します. 写真の対角線が高さよりも大きく、マトリックスを回転させている間、レイアウトがその高さいっぱいまで伸びているためだと思います (これは対角線です)。だから私のスピードメーターは常に変化しています。私にできることはありますか?