增加了Marker的点击切换样式的逻辑,还有问题,需要修改底层
This commit is contained in:
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -40,6 +40,16 @@
|
||||
app:miv_placeHolder="@drawable/icon_default"
|
||||
app:miv_shape="circle" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/ivIconForeground"
|
||||
android:layout_width="@dimen/dp_56"
|
||||
android:layout_height="@dimen/dp_56"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginTop="@dimen/dp_6"
|
||||
android:src="@drawable/icon_map_marker_music_play"
|
||||
app:layout_constraintStart_toStartOf="@+id/ivUserHead"
|
||||
app:layout_constraintTop_toTopOf="@+id/ivUserHead" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvMarkerContent"
|
||||
android:layout_width="wrap_content"
|
||||
|
||||
Reference in New Issue
Block a user