【问题标题】:Android map api - changing zoom level causes incorrect marker positionAndroid 地图 api - 更改缩放级别会导致标记位置不正确
【发布时间】:2014-03-31 12:55:01
【问题描述】:

抱歉,如果之前有人问过这个问题。这似乎很明显的问题,但找不到任何参考。

当向地图添加标记时——甚至不是自定义标记,只是平面标记,以及放大/缩小,标记图像“浮动”到不同的位置,甚至是不同的状态!我将正确的 Double 传递给纬度/经度等。一直放大可以让您到达正确的位置。

看看 Google 自己的服务,例如 Google+ 位置共享,它似乎对他们来说工作得很好。所以不知道该怎么做。他们是否为每个缩放级别重新计算锚点?嗯

感谢任何帮助! 谢谢, 乌迪

【问题讨论】:

  • 请展示一些代码,它将帮助我们了解发生了什么。
  • 代码超级简单-
  • LatLng myPlace = new LatLng(friendLat,friendLng);
  • friendMarker = googleMap.addMarker(new MarkerOptions() .title(nameStr) .sn-p("好的都在这里!") .position(myPlace) .icon(BitmapDescriptorFactory.fromBitmap(myBitmap) ) .alpha(0.7f) .anchor(0.5f, 0.5f));
  • 从您发布的内容中我能看到的唯一可能导致此问题的是锚点。你设置的是引脚的中间,这是你想要的吗?编辑:垂直和水平居中(大多数引脚需要 (0.5, 1) 的锚点)

标签: android zooming google-maps-android-api-2 marker


【解决方案1】:

我在添加marker.anchor(0,0); 时遇到了同样的问题。修复了问题。

【讨论】:

    【解决方案2】:

    我在向谷歌地图添加标记时遇到同样的问题,当尝试转换和调整可绘制资源的大小时,问题是位图错误,只需使用这个:

        Marker marker = mMap.addMarker(new MarkerOptions()
        ...
        .icon(BitmapDescriptorFactory.fromResource(R.drawable.ic_merchant_location)));
    

    您可以查看official Android Docs

    【讨论】:

      猜你喜欢
      • 2011-07-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-26
      • 1970-01-01
      相关资源
      最近更新 更多