diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MarkerServiceHandler.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MarkerServiceHandler.java index e34429f83c..87bd704ff0 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MarkerServiceHandler.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MarkerServiceHandler.java @@ -106,6 +106,8 @@ public class MarkerServiceHandler { } + private static IMogoMarker lastMarker; + /** * 地图上的Marker点击回调 */ @@ -114,6 +116,35 @@ public class MarkerServiceHandler { @Override public boolean onMarkerClicked(IMogoMarker marker) { TipToast.shortTip("点击了大而全中的Marker"); + if (lastMarker != null) { + MapMarkerView mapMarkerView = new MapMarkerView(mContext); + + MogoMarkerOptions options = new MogoMarkerOptions() + .icon(mapMarkerView) + .owner(lastMarker.getOwner()) + .latitude(lastMarker.getPosition().getLat()) + .longitude(lastMarker.getPosition().getLng()); + + IMogoMarker newMarker = getMarkerManager().addMarker(lastMarker.getOwner(), options); + newMarker.setInfoWindowAdapter(markerInfoWindowAdapter); + newMarker.setOnMarkerClickListener(mogoMarkerClickListener); + newMarker.setObject(lastMarker.getObject()); + } + + lastMarker = marker; + + MapMarkerInfoView mapMarkerInfoView = new MapMarkerInfoView(mContext); + + MogoMarkerOptions options = new MogoMarkerOptions() + .icon(mapMarkerInfoView) + .owner(marker.getOwner()) + .latitude(marker.getPosition().getLat()) + .longitude(marker.getPosition().getLng()); + + IMogoMarker newMarker = getMarkerManager().addMarker(marker.getOwner(), options); + newMarker.setInfoWindowAdapter(markerInfoWindowAdapter); + newMarker.setOnMarkerClickListener(mogoMarkerClickListener); + newMarker.setObject(marker.getObject()); return false; } @@ -176,7 +207,7 @@ public class MarkerServiceHandler { } } - getMapUIController().changeZoom(10); + getMapUIController().changeZoom(8); } /** @@ -241,6 +272,6 @@ public class MarkerServiceHandler { marker.setOnMarkerClickListener(mogoMarkerClickListener); marker.setObject("我是Marker上面绑定的数据"); - getMapUIController().changeZoom(10); + getMapUIController().changeZoom(8); } } diff --git a/modules/mogo-module-service/src/main/res/layout/view_map_marker_info.xml b/modules/mogo-module-service/src/main/res/layout/view_map_marker_info.xml index 388674c7e2..2f940f1122 100644 --- a/modules/mogo-module-service/src/main/res/layout/view_map_marker_info.xml +++ b/modules/mogo-module-service/src/main/res/layout/view_map_marker_info.xml @@ -40,6 +40,16 @@ app:miv_placeHolder="@drawable/icon_default" app:miv_shape="circle" /> + +