修改锚点的点击事件

This commit is contained in:
jiaguofeng
2020-07-14 18:43:27 +08:00
parent 8d13a3471f
commit 44bbcec533
4 changed files with 36 additions and 36 deletions

View File

@@ -2,7 +2,7 @@ package com.mogo.map.impl.custom;
import android.util.Log;
import com.mogo.map.impl.custom.marker.MarkerWrapperIntance;
import com.mogo.map.impl.custom.marker.MarkerWrapperClickHelper;
import com.mogo.map.marker.IMogoMarker;
import com.mogo.map.marker.IMogoMarkerClickListener;
import com.mogo.map.marker.MogoMarkersHandler;
@@ -23,7 +23,7 @@ public class AMapMarkerClickHandler {
if ( marker == null ) {
return false;
}
Map<String, IMogoMarker> mogoMarkerMap = MarkerWrapperIntance.getInstance().getMogoMarkerMap();
Map<String, IMogoMarker> mogoMarkerMap = MarkerWrapperClickHelper.getInstance().getMogoMarkerMap();
if ( mogoMarkerMap.containsKey(marker.getId())) {
IMogoMarker mogoMarker = mogoMarkerMap.get(marker.getId());
final IMogoMarkerClickListener listener = mogoMarker.getOnMarkerClickListener();

View File

@@ -5,12 +5,8 @@ import android.graphics.Point;
import android.util.Log;
import android.view.View;
import android.view.animation.Interpolator;
import android.view.animation.ScaleAnimation;
import android.view.animation.TranslateAnimation;
import com.mogo.commons.AbsMogoApplication;
import com.mogo.map.MogoLatLng;
import com.mogo.map.impl.custom.AMapWrapper;
import com.mogo.map.impl.custom.utils.ObjectUtils;
import com.mogo.map.marker.IMogoInfoWindowAdapter;
import com.mogo.map.marker.IMogoMarker;
@@ -18,14 +14,12 @@ import com.mogo.map.marker.IMogoMarkerClickListener;
import com.mogo.map.marker.IMogoMarkerIconViewCreator;
import com.mogo.map.marker.MogoMarkerOptions;
import com.mogo.map.marker.anim.OnMarkerAnimationListener;
import com.mogo.utils.WindowUtils;
import com.mogo.utils.logger.Logger;
import com.zhidaoauto.map.sdk.inner.marker.Animation;
import com.zhidaoauto.map.sdk.inner.marker.MarkerScaleAnimation;
import com.zhidaoauto.map.sdk.inner.marker.MarkerTranslateAnimation;
import com.zhidaoauto.map.sdk.open.abs.marker.MarkerAnimationListener;
import com.zhidaoauto.map.sdk.open.marker.Marker;
import com.zhidaoauto.map.sdk.open.marker.MarkerInfo;
import com.zhidaoauto.map.sdk.open.marker.MarkerOptions;
import com.zhidaoauto.map.sdk.open.query.LonLatPoint;
import com.zhidaoauto.map.sdk.open.tools.MapTools;
@@ -33,7 +27,6 @@ import com.zhidaoauto.map.sdk.open.tools.MapTools;
import org.jetbrains.annotations.NotNull;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Observable;
import java.util.Observer;
@@ -63,7 +56,7 @@ public class AMapMarkerWrapper implements IMogoMarker, Observer {
if (marker != null) {
// 设置高德 marker 的object对象为 IMogoMarker 实例。!!!!
marker.setMObject(this);
MarkerWrapperIntance.getInstance().setMogoMarkerMap(marker.getId(),this);
MarkerWrapperClickHelper.getInstance().setMogoMarkerMap(marker.getId(),this);
}
setObject(mogoMarkerOptions.getObject());
this.mMogoMarkerOptions = mogoMarkerOptions;

View File

@@ -0,0 +1,33 @@
package com.mogo.map.impl.custom.marker;
import com.mogo.map.marker.IMogoMarker;
import com.mogo.map.marker.IMogoMarkerClickListener;
import java.util.HashMap;
import java.util.Map;
public class MarkerWrapperClickHelper {
private volatile static MarkerWrapperClickHelper markerWrapperClickHelper;
private Map<String, IMogoMarker> mogoMarkerMap = new HashMap<>();
public void setMogoMarkerMap(String id,IMogoMarker iMogoMarker){
this.mogoMarkerMap.put(id,iMogoMarker);
}
public Map<String, IMogoMarker> getMogoMarkerMap() {
return mogoMarkerMap;
}
public static MarkerWrapperClickHelper getInstance(){
if (markerWrapperClickHelper == null) {
synchronized (MarkerWrapperClickHelper.class) {
if (markerWrapperClickHelper == null) {
markerWrapperClickHelper = new MarkerWrapperClickHelper();
}
}
}
return markerWrapperClickHelper;
}
}

View File

@@ -1,26 +0,0 @@
package com.mogo.map.impl.custom.marker;
import com.mogo.map.marker.IMogoMarker;
import com.zhidaoauto.map.sdk.open.marker.Marker;
import java.util.HashMap;
import java.util.Map;
public class MarkerWrapperIntance {
public static MarkerWrapperIntance markerWrapperIntance;
private Map<String, IMogoMarker> mogoMarkerMap = new HashMap<>();
public void setMogoMarkerMap(String id,IMogoMarker iMogoMarker){
this.mogoMarkerMap.put(id,iMogoMarker);
}
public Map<String, IMogoMarker> getMogoMarkerMap() {
return mogoMarkerMap;
}
public static MarkerWrapperIntance getInstance(){
if (markerWrapperIntance == null){
markerWrapperIntance = new MarkerWrapperIntance();
}
return markerWrapperIntance;
}
}