2011-02-16 15 views
9

私はAndroid用の新しい開発者です。円運動でMapViewを回転しようとしました。 しかし、私は始める方法がわかりません。MapViewを回転するには?

MapViewを回転させる簡単なコードはありますか?

答えて

11

私は過去にこれを行いました。それは、dispatchDraw()メソッドでキャンバスを回転させるカスタムViewGroupを作成する必要があります。また、MapViewのサイズを大きくする必要があります(回転すると十分なピクセルが描画されるようにする必要があります)。また、dispatchTouchEvent()でタッチイベントを回転させる必要があります。 Android 3.0を使用している場合は、単にMapView.rotate()を呼び出すことができます。

+0

これは素晴らしいです。マン 'ありがとう。 – Ferdinand

+0

MapViewは含まれていないHoneycomb Previewしか入手できません。 Android 3.0用のMaps APIを入手する方法はありますか?ドキュメンテーション?何か?可愛い? –

+0

@Romain Guy:私はrotate()メソッドを取得しません。 –

1

一般的なケースとして、必要な角度の回転でいつもAffine Transformを作成できます。一般的なケースでは、あなたは、このフォームの行列の乗算を行います。

(x、y)は、あなたの最初の座標である
|x'| |cosθ -sinθ 0| |x| 
|y'| = |sinθ cosθ 0|*|y| 
|1 | |0  0  1| |1| 

、θは(「Y」x)は、お使いの回転角、およびされた結果です変換。

+0

アンドロイドでAffine Transformを使用する方法に関するもう1つの質問:http://stackoverflow.com/questions/3534642/how-to-map-javas-affinetransform-to-androids-matrix – Macarse

関連する問題