这里我在地图上添加标记:
hereMap.addMapObject(new MapMarker(new GeoCoordinate(lat,lng), myImage)
.setTitle("marker"+geoCounter)
.setDescription(" \nLatitude :" +lati+ "\nLongitude : "+ lng));
使用lat lng的数组列表添加lat lng但是当我在以下帮助下添加标记时:
@Override
public void onLocationChanged(Location location) {...}
List<ViewObject>
列表为我提供了添加标记的确切大小。
在这种情况下,我得到lat long:
location.getLatitude()
location.getLongitude()
以下是地图上的地图标记:
我在这里得到这样的大小:
答案 0 :(得分:1)
似乎
public abstract boolean onMapObjectsSelected (java.util.List <ViewObject> objects)
一个回调,表示由于用户点击地图而至少选择了一个ViewObject。因此objects
只有选定的标记。访问地图上的所有标记您应该在调用ArrayList<MapMarker>
之后将生成的标记对象保存在您选择的集合中(例如addMarker()
),就像在this回答中一样。例如:
ArrayList<MapMarker> mMarkersList = new ArrayList();
...
MapMarker marker = new MapMarker(new GeoCoordinate(lat,lng), myImage)
.setTitle("marker"+geoCounter)
.setDescription(" \nLatitude :" +lati+ "\nLongitude : "+ lng)
mMarkersList.add(marker);
hereMap.addMapObject(marker);
然后从mMarkersList
获取它:
MapMarker marker = mMarkersList.get(<number_of_marker>)