From 8e2af27ca07c8b547679bf7f3a586fc56ad10595 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Thu, 30 Apr 2020 12:02:01 +0800 Subject: [PATCH] opt --- .../service/marker/MapMarkerManager.java | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java index 6c896421e8..61a591128c 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java @@ -287,9 +287,12 @@ public class MapMarkerManager implements IMogoMarkerClickListener, if (object != null) { MarkerShowEntity markerShowEntity = (MarkerShowEntity) object; markerShowEntity.setChecked(true); - IMarkerView markerView = MapMarkerAdapter.getMarkerView(mContext, markerShowEntity, - mogoMarker.getMogoMarkerOptions()); - mogoMarker.setIcon(ViewUtils.fromView(markerView.getView())); + IMarkerView markerView = MapMarkerAdapter.getMarkerView(mContext, markerShowEntity, mogoMarker.getMogoMarkerOptions()); + if ( markerView instanceof OnlineCarMarkerView ) { + mogoMarker.setIcon(markerView.getBitmap()); + } else { + mogoMarker.setIcon(ViewUtils.fromView(markerView.getView())); + } mogoMarker.setToTop(); } } @@ -309,9 +312,12 @@ public class MapMarkerManager implements IMogoMarkerClickListener, if (object != null) { MarkerShowEntity markerShowEntity = (MarkerShowEntity) object; markerShowEntity.setChecked(false); - IMarkerView markerView = MapMarkerAdapter.getMarkerView(mContext, markerShowEntity, - mogoMarker.getMogoMarkerOptions()); - mogoMarker.setIcon(ViewUtils.fromView(markerView.getView())); + IMarkerView markerView = MapMarkerAdapter.getMarkerView(mContext, markerShowEntity, mogoMarker.getMogoMarkerOptions()); + if ( markerView instanceof OnlineCarMarkerView ) { + mogoMarker.setIcon(markerView.getBitmap()); + } else { + mogoMarker.setIcon(ViewUtils.fromView(markerView.getView())); + } } } } @@ -778,8 +784,9 @@ public class MapMarkerManager implements IMogoMarkerClickListener, } MogoMarkerOptions options = new MogoMarkerOptions().owner(markerShowEntity.getMarkerType()).object(markerShowEntity).latitude(markerShowEntity.getMarkerLocation().getLat()).longitude(markerShowEntity.getMarkerLocation().getLon()); IMarkerView markerView = MapMarkerAdapter.getMarkerView(mContext, markerShowEntity, options); - if ( markerView.getView() == null ) { + if ( markerView instanceof OnlineCarMarkerView ) { options.icon(markerView.getBitmap()); + options.anchor( 0.5f, 0.5f ); } else { options.icon(markerView.getView()); }