diff --git a/.idea/gradle.xml b/.idea/gradle.xml index b569ae3318..904f2b0e0d 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -91,6 +91,7 @@ diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/marker/IMogoMarkerManager.java b/libraries/mogo-map-api/src/main/java/com/mogo/map/marker/IMogoMarkerManager.java index 433b4dada0..86b5d5385f 100644 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/marker/IMogoMarkerManager.java +++ b/libraries/mogo-map-api/src/main/java/com/mogo/map/marker/IMogoMarkerManager.java @@ -46,6 +46,16 @@ public interface IMogoMarkerManager { */ void removeMarkers(); + /** + * 显示地图上添加的所有markers + */ + void visibleAllMarkers(); + + /** + * 隐藏地图上添加的所有markers + */ + void inVisibleAllMarkers(); + /** * 获取某种类型的全部marker。 * diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/marker/MogoMarkersHandler.java b/libraries/mogo-map-api/src/main/java/com/mogo/map/marker/MogoMarkersHandler.java index 2530bb1f29..4eede46dcb 100644 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/marker/MogoMarkersHandler.java +++ b/libraries/mogo-map-api/src/main/java/com/mogo/map/marker/MogoMarkersHandler.java @@ -1,7 +1,11 @@ package com.mogo.map.marker; +import android.annotation.SuppressLint; +import android.os.Build; import android.text.TextUtils; +import androidx.annotation.RequiresApi; + import com.mogo.map.listener.IMogoMapListener; import com.mogo.map.listener.IMogoMapListenerRegister; @@ -43,6 +47,20 @@ public class MogoMarkersHandler implements IMogoMarkerClickListener, IMogoMarker sInstance = null; } + @SuppressLint("NewApi") + public synchronized void visibleAll(){ + mServicesMarkers.values().stream() + .filter(mogoMarkerList -> mogoMarkerList != null && !mogoMarkerList.isEmpty()) + .forEach(mogoMarkerList -> mogoMarkerList.forEach(mogoMarker -> mogoMarker.setVisible(true))); + } + + @SuppressLint("NewApi") + public synchronized void inVisibleAll(){ + mServicesMarkers.values().stream() + .filter(mogoMarkerList -> mogoMarkerList != null && !mogoMarkerList.isEmpty()) + .forEach(mogoMarkerList -> mogoMarkerList.forEach(mogoMarker -> mogoMarker.setVisible(false))); + } + public synchronized void removeAll() { final Collection< List< IMogoMarker > > mogoMarkers = mServicesMarkers.values(); for ( List< IMogoMarker > mogoMarkerList : mogoMarkers ) { diff --git a/libraries/mogo-map/src/main/java/com/mogo/map/MogoMarkerManager.java b/libraries/mogo-map/src/main/java/com/mogo/map/MogoMarkerManager.java index 1222a3f4a0..9d8e814229 100644 --- a/libraries/mogo-map/src/main/java/com/mogo/map/MogoMarkerManager.java +++ b/libraries/mogo-map/src/main/java/com/mogo/map/MogoMarkerManager.java @@ -98,4 +98,14 @@ public class MogoMarkerManager implements IMogoMarkerManager { public void removeRouteWayOverlay() { // RouteOverlayHelper.getInstance().removeAll(); } + + @Override + public void visibleAllMarkers() { + + } + + @Override + public void inVisibleAllMarkers() { + + } } diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java index 8d8322ac3d..d9ef4ba560 100644 --- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java @@ -46,6 +46,7 @@ import com.mogo.map.navi.MogoTraffic; import com.mogo.map.uicontroller.EnumMapUI; import com.mogo.map.uicontroller.IMogoMapUIController; import com.mogo.map.uicontroller.VisualAngleMode; +import com.mogo.module.common.ModuleNames; import com.mogo.module.common.MogoApisHandler; import com.mogo.module.common.dialog.WMDialog; import com.mogo.module.common.glide.SkinAbleBitmapTarget; @@ -180,6 +181,9 @@ public class EntranceFragment extends MvpFragment - - + + + + + + +