Commit e25955c793837a7b6a23c7ff8fa94609a9824681

Authored by 杨帅
1 parent 312fcc08

1 调整"我的记录","轨迹列表"以及"上传赛事成绩"页面中地图轨迹的显示效果

config.gradle
... ... @@ -21,7 +21,7 @@ ext {
21 21 //编译方式
22 22 debug : false,
23 23 //版本号
24   - version: "0.7.10",
  24 + version: "0.7.11",
25 25 //Lib库前缀
26 26 packeg : "com.cnlive.module",
27 27 //Lib库名称
... ...
moudle_pedometer/src/main/java/com/cnlive/moudle/collectionTrace/frame/view/CollTraceListDetailFragmentView.java
... ... @@ -4,6 +4,7 @@ import android.app.Activity;
4 4 import android.content.Context;
5 5 import android.graphics.Bitmap;
6 6 import android.graphics.BitmapFactory;
  7 +import android.graphics.Point;
7 8 import android.os.Handler;
8 9 import android.support.v7.widget.LinearLayoutManager;
9 10 import android.text.TextUtils;
... ... @@ -12,6 +13,8 @@ import android.view.MotionEvent;
12 13 import android.view.View;
13 14  
14 15 import com.baidu.mapapi.map.BaiduMap;
  16 +import com.baidu.mapapi.map.MapStatus;
  17 +import com.baidu.mapapi.map.MapStatusUpdateFactory;
15 18 import com.baidu.mapapi.map.MapView;
16 19 import com.baidu.mapapi.map.Overlay;
17 20 import com.baidu.mapapi.map.UiSettings;
... ... @@ -298,7 +301,15 @@ public class CollTraceListDetailFragmentView implements MvpView, OnFenceListener
298 301 }
299 302  
300 303 }
301   - //
  304 + //设置显示位置
  305 + if (null != getContext()) {
  306 + MapStatus.Builder builder = new MapStatus.Builder();
  307 + Point screenPoint = ScreenUtil.getScreenPoint(getContext());
  308 + if (null != screenPoint) {
  309 + builder.targetScreen(new Point(screenPoint.x / 2, screenPoint.y / 3));
  310 + }
  311 + baiduMap.animateMapStatus(MapStatusUpdateFactory.newMapStatus(builder.build()));
  312 + }
302 313 }
303 314 }
304 315  
... ...
moudle_pedometer/src/main/java/com/cnlive/moudle/pedometer/frame/presenter/ALLScoreDetailFragmentPresenter.java
1 1 package com.cnlive.moudle.pedometer.frame.presenter;
2 2  
3 3 import android.app.Activity;
  4 +import android.graphics.Point;
4 5 import android.text.TextUtils;
5 6 import android.widget.Toast;
6 7  
  8 +import com.baidu.mapapi.map.MapStatus;
  9 +import com.baidu.mapapi.map.MapStatusUpdate;
  10 +import com.baidu.mapapi.map.MapStatusUpdateFactory;
7 11 import com.baidu.mapapi.model.LatLng;
8 12 import com.baidu.trace.LBSTraceClient;
9 13 import com.baidu.trace.model.SortType;
... ... @@ -16,6 +20,7 @@ import com.cnlive.moudle.pedometer.ui.widget.SelectDialog;
16 20 import com.cnlive.moudle.pedometer.utils.GsonUtil;
17 21 import com.cnlive.moudle.pedometer.utils.MyMapUtil;
18 22 import com.cnlive.moudle.pedometer.utils.QMUITipDialogUtil;
  23 +import com.cnlive.moudle.pedometer.utils.ScreenUtil;
19 24 import com.example.moudle_pedometer.R;
20 25 import com.hannesdorfmann.mosby3.mvp.MvpBasePresenter;
21 26  
... ... @@ -77,7 +82,15 @@ public class ALLScoreDetailFragmentPresenter extends MvpBasePresenter<ALLScoreDe
77 82 MyMapUtil.setMapAutoZoom(getView().baiduMap, resultPoints, -0.8f);
78 83 }
79 84 }
80   -
  85 + //设置显示位置
  86 + if (null != getView()) {
  87 + MapStatus.Builder builder = new MapStatus.Builder();
  88 + Point screenPoint = ScreenUtil.getScreenPoint(context);
  89 + if (null != screenPoint) {
  90 + builder.targetScreen(new Point(screenPoint.x / 2, screenPoint.y / 3));
  91 + }
  92 + getView().baiduMap.animateMapStatus(MapStatusUpdateFactory.newMapStatus(builder.build()));
  93 + }
81 94 }
82 95 //如果用户点击暂停按钮,进行分段查询
83 96 if (runningFinishBean.isPause()) {
... ... @@ -98,6 +111,15 @@ public class ALLScoreDetailFragmentPresenter extends MvpBasePresenter<ALLScoreDe
98 111 //设置地图自动缩放
99 112 allResultList.addAll(resultPoints);
100 113 MyMapUtil.setMapAutoZoom(getView().baiduMap, allResultList, -0.8f);
  114 + //设置显示位置
  115 + if (null != getView()) {
  116 + MapStatus.Builder builder = new MapStatus.Builder();
  117 + Point screenPoint = ScreenUtil.getScreenPoint(context);
  118 + if (null != screenPoint) {
  119 + builder.targetScreen(new Point(screenPoint.x / 2, screenPoint.y / 3));
  120 + }
  121 + getView().baiduMap.animateMapStatus(MapStatusUpdateFactory.newMapStatus(builder.build()));
  122 + }
101 123 }
102 124 }
103 125 });
... ...
moudle_pedometer/src/main/java/com/cnlive/moudle/pedometer/frame/presenter/RunningFinishFragmetPresenter.java
... ... @@ -2,10 +2,13 @@ package com.cnlive.moudle.pedometer.frame.presenter;
2 2  
3 3 import android.app.Activity;
4 4 import android.content.Context;
  5 +import android.graphics.Point;
5 6 import android.text.TextUtils;
6 7 import android.util.Log;
7 8 import android.widget.Toast;
8 9  
  10 +import com.baidu.mapapi.map.MapStatus;
  11 +import com.baidu.mapapi.map.MapStatusUpdateFactory;
9 12 import com.baidu.mapapi.model.LatLng;
10 13 import com.baidu.mapapi.utils.DistanceUtil;
11 14 import com.baidu.trace.LBSTraceClient;
... ... @@ -29,6 +32,7 @@ import com.cnlive.moudle.pedometer.ui.widget.SelectDialog;
29 32 import com.cnlive.moudle.pedometer.utils.GsonUtil;
30 33 import com.cnlive.moudle.pedometer.utils.MyMapUtil;
31 34 import com.cnlive.moudle.pedometer.utils.QMUITipDialogUtil;
  35 +import com.cnlive.moudle.pedometer.utils.ScreenUtil;
32 36 import com.cnlive.moudle.pedometer.utils.StepUtil;
33 37 import com.example.moudle_pedometer.R;
34 38 import com.hannesdorfmann.mosby3.mvp.MvpBasePresenter;
... ... @@ -218,7 +222,14 @@ public class RunningFinishFragmetPresenter extends MvpBasePresenter<RunningFinis
218 222 if (userStepEntity.getPauseCount() == 0) {
219 223 MyMapUtil.drawHistoryTrack(context, getView().baiduMap, resultPoints, SortType.asc, R.color.red, R.drawable.icon_start, R.drawable.icon_end);
220 224 MyMapUtil.setMapAutoZoom(getView().baiduMap, resultPoints, -1.5f);
221   -
  225 + if (null != getView()) {
  226 + MapStatus.Builder builder = new MapStatus.Builder();
  227 + Point screenPoint = ScreenUtil.getScreenPoint(context);
  228 + if (null != screenPoint) {
  229 + builder.targetScreen(new Point(screenPoint.x / 2, screenPoint.y / 3));
  230 + }
  231 + getView().baiduMap.animateMapStatus(MapStatusUpdateFactory.newMapStatus(builder.build()));
  232 + }
222 233 //没有点击暂停
223 234 //先判断是否到达终点
224 235 checkUserIsFinish(resultPoints, userStepEntity, runningFinishBean, context);
... ... @@ -241,6 +252,14 @@ public class RunningFinishFragmetPresenter extends MvpBasePresenter<RunningFinis
241 252 if (importPoints != null) {
242 253 MyMapUtil.drawHistoryTrack(context, getView().baiduMap, resultPoints, SortType.asc, R.color.red, 0, R.drawable.icon_end);
243 254 MyMapUtil.setMapAutoZoom(getView().baiduMap, allResults, -2f);
  255 + if (null != getView()) {
  256 + MapStatus.Builder builder = new MapStatus.Builder();
  257 + Point screenPoint = ScreenUtil.getScreenPoint(context);
  258 + if (null != screenPoint) {
  259 + builder.targetScreen(new Point(screenPoint.x / 2, screenPoint.y / 3));
  260 + }
  261 + getView().baiduMap.animateMapStatus(MapStatusUpdateFactory.newMapStatus(builder.build()));
  262 + }
244 263 //先判断是否到达终点
245 264 checkUserIsFinish(resultPoints, userStepEntity, runningFinishBean, context);
246 265 saveRouteData(context, userStepEntity, runningFinishBean);
... ...
moudle_pedometer/src/main/java/com/cnlive/moudle/pedometer/utils/ScreenUtil.java
... ... @@ -4,7 +4,9 @@ import android.app.Activity;
4 4 import android.content.Context;
5 5 import android.graphics.Bitmap;
6 6 import android.graphics.Matrix;
  7 +import android.graphics.Point;
7 8 import android.os.Build;
  9 +import android.view.Display;
8 10 import android.view.WindowManager;
9 11  
10 12 /*屏幕显示相关设置
... ... @@ -79,6 +81,14 @@ import android.view.WindowManager;
79 81 }
80 82  
81 83  
  84 + public static Point getScreenPoint(Context context) {
  85 + WindowManager manager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
  86 + Display display = manager.getDefaultDisplay();
  87 + Point size = new Point();
  88 + display.getSize(size);
  89 + return size;
  90 + }
  91 +
82 92 public static class ScreenInfo {
83 93 private int width;
84 94 private int height;
... ... @@ -99,4 +109,5 @@ import android.view.WindowManager;
99 109 this.height = height;
100 110 }
101 111 }
  112 +
102 113 }
... ...