如何旋转MapView?

时间:2011-02-16 03:11:19

标签: android android-mapview

我是Android的新开发者。试图以圆周运动旋转MapView。 但我不知道如何开始。

您是否有一个简单的代码来轮换MapView

2 个答案:

答案 0 :(得分:11)

我以前做过这个,它需要创建一个自定义ViewGroup,在dispatchDraw()方法中旋转Canvas。您还需要增加MapView的大小(以便在旋转时绘制足够的像素。)您还需要在dispatchTouchEvent()中旋转触摸事件。或者,如果您使用Android 3.0,您只需调用MapView.rotate():)

答案 1 :(得分:1)

作为一般情况,您始终可以使用所需的倾斜旋转创建Affine Transform。在一般情况下,您执行此形式的矩阵乘法:

|x'|   |cosθ  -sinθ   0| |x|
|y'| = |sinθ  cosθ    0|*|y|
|1 |   |0      0      1| |1|

其中(x,y)是您的初始坐标,θ是您的旋转角度,而(x',y')是结果变换。