【问题标题】:Marker on Google Map on Android NOT alignedAndroid上谷歌地图上的标记未对齐
【发布时间】:2023-03-19 04:03:01
【问题描述】:

我在我的 Android APP 中的 Map Activity 上成功放置了许多标记。

问题是,当缩放较低时(我在屏幕上看到整个国家),我看到标记根本没有与设置的位置对齐。我的意思是,在低缩放级别下,标记似乎位于距离该点 50-100 公里的地方。

我的标记是一个简单的可绘制图标,中间有一个向上的三角形,所以图标的下角(放置在图标的真正底部中心)应该准确地放置在我设置的 GPS 坐标上为标记。相反,对齐点似乎是图标的左下角...

如何设置marker-icon对齐方式?

【问题讨论】:

  • 添加答案作为答案;可以(并且适当)回答您自己的问题。
  • 我的声望不到 100...所以我无法在 8 小时之前为我的问题添加答案...我将答案添加为更新以提醒我要写的文字。

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


【解决方案1】:

自己找到了解决方案。 我使用的是标准的 Overlay 继承类。

我修改了覆盖绘制函数中的指令:

public boolean draw(Canvas canvas, MapView mapView, boolean shadow,
        long when) {
    Point screenPts = new Point();
    mapView.getProjection().toPixels(p, screenPts);
    Point finalDrawPosition= new Point();
    finalDrawPosition.set(screenPts.x - (bmp.getWidth()/2), screenPts.y- bmp.getHeight());

    canvas.drawBitmap(bmp, finalDrawPosition.x, finalDrawPosition.y, null); 
    [...] 
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-10
    • 2021-07-07
    • 2015-01-25
    • 2019-02-18
    • 1970-01-01
    相关资源
    最近更新 更多