2016-02-04 156 views
17

我試圖設置onInfoWindowClickListener爲每個標記命中相關API根據POJO id。這就是我在設置onWindowWindow事件時發現的。如何在Android中將標記設置爲Google地圖標記?

googleMap.setOnInfoWindowClickListener(new OnInfoWindowClickListener() { 

     @Override 
     public void onInfoWindowClick(Marker marker) { 
      // TODO Auto-generated method stub 

     } 
    }); 

但我需要設置相關POJO IDS作爲標籤相關標誌物我做googleMap.addMarker(marker)之前。但是沒有這樣的東西,如marker.setTag()。 我怎麼能把我的ID沒有設置標籤?

+1

使用'HashMap'並存儲'marker Id'和'Pojo Id' –

+0

如何獲得標記ID? –

+0

有沒有marker.setID(「」),marker.getID(),也.. .. 3 –

回答

5

我有一種方法。只要創建HashMap既您的主要Marker和另一個POJO Class,並取回基於特定點擊getInfoContents(.....)

46

Marker現在,你可以這樣做

更新您的谷歌遊戲服務版本

com.google.android.gms:play-services:9.4.0 

Marker marker=mMap.addmarker(new MarkerOptions(LatLang)); 
// set object as tag 
marker.setTag(your object) 

// to retrieve the marker 
marker.getTag();// Type cast to your object type; 
POJO Class
+4

這是寶貴的信息。順便謝謝你。 –

+2

更新'Google Play Services'爲我做了。然而,我通過'gradle'同步將版本更改爲9.4.0後出現錯誤。我不得不關閉「Android Studio」,打開「SDK Manager」,更新「Google Repository」。之後,'gradle'同步工作。 –

+0

這是一個很好的答案。謝謝。 – Neela

相關問題