Android版谷歌地图V2 - 添加对象标记(Android Google Maps v2 -

2019-07-05 08:41发布

我们如何才能在新的谷歌地图API的Android V2的对象添加到一个标志? 因此,如果我们点击InfoWindow ,我们可以做与对象的东西吗?

public void addSpotOnMap(Spot spot) {
    getMap().addMarker(new MarkerOptions()
            .position(new LatLng(spot.getParseGeoPoint().getLatitude(), spot.getParseGeoPoint().getLongitude()))
            .title(spot.getName())
            .snippet(spot.getCategory())
            .draggable(false));

}

这为对象的位置,标题和摘要。 但是,我希望能够去到这个地点特有的对象另一个活动,如果我点击InfoWindow

Answer 1:

真的不知道,如果这是正确的答案,但看看我这篇文章我对这个问题提出:

由于Markerfinal ,正是这种可容易地通过将数据与链接来解决MarkerMap ,例如HashMap<Marker, YourDataClass>HashMap<Marker, String>

下面是解释了所有的教程: http://bon-app-etit.blogspot.be/2012/12/add-informationobject-to-marker-in.html



Answer 2:

如播放服务V9.4.0的,你现在可以直接在标志设置的任何物体!

要保存的数据:

Marker marker = getMap().addMarker(new MarkerOptions()
        .position(lat, lng)
        .title(spot.getName());

CustomObject myData = new CustomObject();
marker.setTag(myData);

然后中检索数据:

CustomObject myRestoredData = (CustomObject)marker.getTag(myData);

有关标记数据更infomration, 这里的文档 。



Answer 3:

尝试Android的地图的扩展它的图书馆,在那里你可以通过SetData方法添加对象标记和检索数据调用方法的getData

阅读更多

Object getData() and setData(Object) on Marker, Circle, GroundOverlay, Polygon, Polyline or TileOverlay

从摇篮您可以使用谷歌播放服务的任何版本

dependencies {
    compile 'com.androidmapsextensions:android-maps-extensions:2.2.0'
    compile 'com.google.android.gms:play-services-maps:8.1.0'
}


文章来源: Android Google Maps v2 - Add object to marker