From 90f3fce68e1be250bd6a71afa97196c9528bd301 Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Thu, 4 Aug 2022 17:55:33 +0800 Subject: [PATCH] =?UTF-8?q?[Update]=E5=90=8C=E4=B8=80=E4=B8=AA=E7=BA=BF?= =?UTF-8?q?=E7=A8=8B=E7=BB=98=E5=88=B6=E5=92=8C=E6=93=A6=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/function/smp/AMapCustomView.java | 33 +++++++++++-------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/smp/AMapCustomView.java b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/smp/AMapCustomView.java index 96aca1cc99..e72ef33969 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/smp/AMapCustomView.java +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/smp/AMapCustomView.java @@ -41,6 +41,7 @@ import com.mogo.eagle.core.function.map.R; import com.mogo.eagle.core.function.overview.InfStructureManager; import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils; import com.mogo.eagle.core.utilcode.mogo.MapAssetStyleUtils; +import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import org.jetbrains.annotations.NotNull; @@ -232,18 +233,22 @@ public class AMapCustomView // 转成高德坐标系并存储 MarkerDrawerManager.INSTANCE.updateRoutePoints(list, mContext); List planningPointList = MarkerDrawerManager.INSTANCE.getPlanningPoints(); - displayCustomOverView(); - drawStartAndEndMarker(planningPointList); + UiThreadHandler.post(() -> { + displayCustomOverView(); + drawStartAndEndMarker(planningPointList); + }); MarkerDrawerManager.INSTANCE.setCallback((points, locIndex) -> { // 每1s刷新一下轨迹线 - if (points.size() > 0) { - drawPolyline(points, locIndex); - } else { - clearCustomPolyline(); - } + UiThreadHandler.post(() -> { + if (points.size() > 0) { + drawPolyline(points, locIndex); + } + }); }); MarkerDrawerManager.INSTANCE.startLoopCalCarLocation(); - drawInfrastructureMarkers(locationList); + UiThreadHandler.post(() -> { + drawInfrastructureMarkers(locationList); + }); } @Override @@ -264,11 +269,13 @@ public class AMapCustomView public void onLocationChanged(@org.jetbrains.annotations.Nullable MogoLocation location, int from) { mLocation = location; MarkerDrawerManager.INSTANCE.setLonLat(new Pair(location.getLongitude(), location.getLatitude())); - drawCarMarker(location); - if (isFirstLocation) { - displayCustomOverView(); - isFirstLocation = false; - } + UiThreadHandler.post(() -> { + drawCarMarker(location); + if (isFirstLocation) { + displayCustomOverView(); + isFirstLocation = false; + } + }); } public void onCreateView(Bundle savedInstanceState) {