我有一个简单的应用程序与谷歌地图和动态加载标记。在2个或更多个标记具有相同纬度和长度的情况下,仅呈现一个。这有什么解决方案吗?这就是我如何绘制标记来映射
private void plotMarkers(ArrayList<MyMarker> markers, String markerIcon)
{
if(markers.size() > 0)
{
for (MyMarker myMarker : markers)
{
// Create user marker with custom icon and other options
// Toast.makeText(getApplicationContext(), myMarker.getmLatitude().toString(), Toast.LENGTH_SHORT).show();
MarkerOptions markerOption = new MarkerOptions().position(new LatLng(myMarker.getmLatitude(), myMarker.getmLongitude()));
markerOption.icon(BitmapDescriptorFactory.fromResource(manageMarkerIcon(markerIcon)));
Marker currentMarker = mMap.addMarker(markerOption);
mMarkersHashMap.put(currentMarker, myMarker);
mMap.setInfoWindowAdapter(new MarkerInfoWindowAdapter());
}
}
}
答案 0 :(得分:0)
即使你可以,你会如何使用这两个重叠标记?只有顶部的一个是可见的。 相反,如果两个标记重叠,您可以在一个包含它们的标记中表达它们共享的数据。
这个答案可能会有所帮助:Android Google Maps v2 - Add object to marker
答案 1 :(得分:0)
两个标记都显示,但两者都在同一个位置,似乎只有一个,如果点击它们,只会显示一个信息窗口。
如果您确实需要在同一位置添加两个标记,则可能需要查看Google Maps Android Marker Clustering Utility。它是Google Maps Android API Utility Library的一部分。
可能的解决方法是检查您尝试绘制标记的位置是否有另一个标记,如果有,请稍微移动新标记。