2012-09-21 60 views
0

我需要在可滾動和可縮放的網格上顯示一組標記的標記。像谷歌地圖Android API,但沒有實際的地圖圖像,只是用戶界面。Android的自定義地圖引擎

我使用谷歌地圖禁用地圖,但它有一個問題---它不能放大低於5米,而我可能需要放大到毫米級(標記可能是接近)。 Yandex Maps有類似的限制---即使我不使用它,我也無法縮放地圖分辨率。

有什麼建議嗎?

+0

好吧,我只是寫我自己的分量。 – aimozg

+0

您能否更詳細地瞭解您是如何做到這一點的? – SaKet

+0

@SaKet查看答案 – aimozg

回答

1

我不能分享我的自定義渲染器的代碼,所以這裏有總體架構:

  1. 一個MapView的(擴展查看)與變焦性能和列表組件MapLayers

  2. A MapLayer抽象類與onClickrender方法。這個類有兩個子類:

    2.1。一個GridLayer渲染方法取決於MapView的變焦

    2.2繪製網格。一個MarkerLayer類存儲標記並呈現他們。

  3. 標記存儲緯度經度並且還HashMap中的屬性(如顏色,ID等)

  4. 要映射標記緯度經度MapView類「SX和y我用實例IProjector接口,目前 - 墨卡託投影機與維基百科

  5. 公式要渲染標記MarkerLayer使用MarkerRenderer抽象類的實例。我有兩個MarkerRenderersSimpleMarkerRenderer,吸引圓圈(其衝程和填充顏色從標記截取的屬性),和ImageMarkerRenderer,吸引從標記拍攝的圖像(圖像ID'小號屬性

+0

謝謝。 @aimozg – SaKet