2012-02-01 35 views
1

我放置在我的Android應用程序中的我的地圖活動成功地許多標記。標記在谷歌地圖上的Android未對齊

的問題是,當變焦低(ⅰ在屏幕上看到的整個國家)我看到,標記根本沒有被對準到設定位置。我的意思是,在低放大倍數下,標記似乎被放置在距離該點50-100公里處。

我的標記是一個簡單的可繪製圖標,中間有一個向上的三角形,所以圖標的下角(放置在圖標的實際底部中心)應該完全放置在GPS座標上爲標記設置。相反,似乎對齊的點是圖標的左下角...

如何設置標記圖標對齊?

+0

添加答案作爲一個答案;回答你自己的問題是可以的(也是合適的)。 – 2012-02-01 12:26:07

+0

我有不到100個聲望......所以我不能在8小時前給我的問題添加答案......我添加了答案作爲更新,以提醒我有關要寫入的文本。 – Alex 2012-02-01 16:39:07

回答

1

我自己找到了解決方案。 我使用標準的Overlay繼承類。

我修改的指令在overrided繪製函數:

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); 
    [...] 
    }