2016-02-04 157 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

相关问题