From 2c8563219b3e21f5ea3d2cc78f750b30fbf249ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Fri, 10 Jan 2020 11:49:10 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BA=86Marker=E7=9A=84?= =?UTF-8?q?=E7=82=B9=E5=87=BB=E5=88=87=E6=8D=A2=E6=A0=B7=E5=BC=8F=E7=9A=84?= =?UTF-8?q?=E9=80=BB=E8=BE=91=EF=BC=8C=E8=BF=98=E6=9C=89=E9=97=AE=E9=A2=98?= =?UTF-8?q?=EF=BC=8C=E9=9C=80=E8=A6=81=E4=BF=AE=E6=94=B9=E5=BA=95=E5=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/service/MarkerServiceHandler.java | 35 +++++++++++++++++-- .../main/res/layout/view_map_marker_info.xml | 10 ++++++ 2 files changed, 43 insertions(+), 2 deletions(-) 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" /> + +