【问题标题】:Google Map Marker Rotation not change when rotate map旋转地图时谷歌地图标记旋转不会改变
【发布时间】:2014-08-25 09:14:47
【问题描述】:

我正在使用 android Google Map API v2 在 android 手机上构建导航应用程序。对于移动方向,我使用带有箭头图像的标记作为标记(图像顶部有一个点和一个箭头)。我尝试使用 .rotation 根据移动方向设置标记的方向。 问题是当我旋转谷歌地图时,地图的旋转发生了变化,但标记的方向没有改变。 我正在寻找一种方法来设置标记相对于地图旋转的旋转(因此当用户旋转地图时,标记将相应地旋转)。 或者如果有人知道除了我的原始方式之外如何构建方向箭头,请赐教。谢谢你:)

【问题讨论】:

    标签: android google-maps google-maps-markers


    【解决方案1】:

    默认情况下,标记朝向屏幕,不会随相机旋转或倾斜。平面标记面向地球表面,并会随相机旋转和倾斜。

    您可以通过调用flat(true) 使标记变平,如下例所示:

    Marker perth = mMap.addMarker(new MarkerOptions()
                          .position(PERTH)
                          .flat(true));
    

    【讨论】:

    • 是的,它成功了。像冠军一样工作:) 感谢您的快速回复
    【解决方案2】:

    致电setRotation 即可解决问题!

    例如

    static final LatLng PERTH = new LatLng(-31.90, 115.86);
    Marker perth = mMap.addMarker(new MarkerOptions()
                              .position(PERTH)
                              .anchor(0.5,0.5)
                              .rotation(90.0));
    

    Code Ref

    【讨论】:

    • 地图旋转时不会自动改变标记方向。但是当我想更新一个新的方向时它会有所帮助。谢谢你:)
    • @Thomas 是的,它一定会在某个时候派上用场。他们说没有任何学习是浪费的。 +1 来自我
    猜你喜欢
    • 1970-01-01
    • 2012-05-20
    • 1970-01-01
    • 1970-01-01
    • 2020-07-24
    • 1970-01-01
    • 1970-01-01
    • 2012-09-24
    • 2020-01-22
    相关资源
    最近更新 更多