From b41f9db09c0145d4530e78c0c53d0a1cacd29e03 Mon Sep 17 00:00:00 2001 From: endian11 <Dana_Lee1016@126.com> Date: 星期五, 18 九月 2020 15:07:01 +0800 Subject: [PATCH] 完成线路采集(未充分测试——) --- app/src/main/java/safeluck/drive/evaluation/DB/route/RouteBean.java | 9 + app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java | 54 +++++++ app/src/main/java/safeluck/drive/evaluation/DB/exam_status/ExamStatusOutWorker.kt | 2 app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java | 173 +++++++++++++++++++++++- app/src/main/java/safeluck/drive/evaluation/routecollect/bean/RoadCrossInfo.java | 9 + app/src/main/java/safeluck/drive/evaluation/DB/route/RouteLineRepository.java | 12 + app/src/main/java/safeluck/drive/evaluation/DB/route/RouteLineViewModel.java | 4 app/src/main/java/safeluck/drive/evaluation/app.java | 5 app/src/main/java/safeluck/drive/evaluation/DB/route/RouteBeanDao.java | 12 + app/src/main/java/safeluck/drive/evaluation/routecollect/bean/RoadInfo.java | 8 + app/src/main/java/safeluck/drive/evaluation/fragment/SignalConfigFragment.java | 2 app/src/main/java/safeluck/drive/evaluation/widget/StatusDialog.java | 7 + app/src/main/res/layout/layout_project_collect.xml | 102 +++++++++----- 13 files changed, 349 insertions(+), 50 deletions(-) diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/exam_status/ExamStatusOutWorker.kt b/app/src/main/java/safeluck/drive/evaluation/DB/exam_status/ExamStatusOutWorker.kt index dd73720..a0f86e8 100644 --- a/app/src/main/java/safeluck/drive/evaluation/DB/exam_status/ExamStatusOutWorker.kt +++ b/app/src/main/java/safeluck/drive/evaluation/DB/exam_status/ExamStatusOutWorker.kt @@ -138,7 +138,7 @@ if (listContainsSameValue(indexs)) { MyLog.i(TAG, "sendSignalConfigsToRemote: 鏈夌浉鍚岀殑index锛屼笉鑳藉彂閫�" + gson.toJson(signalConfiglist)) } else { - AYSdk.getInstance().sendCmd(safeluck.drive.evaluation.Constant.SEND_CONFIG_SIGNAL, gson.toJson(signalConfiglist)) +// AYSdk.getInstance().sendCmd(safeluck.drive.evaluation.Constant.SEND_CONFIG_SIGNAL, gson.toJson(signalConfiglist)) } } } diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteBean.java b/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteBean.java index a1a0854..17f0b8a 100644 --- a/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteBean.java +++ b/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteBean.java @@ -17,6 +17,15 @@ @PrimaryKey(autoGenerate = true) private int id; private String routeName; + private int currentCollectFlag;//1-褰撳墠姝e湪閲� ,鏁村紶琛ㄥ敮涓�锛屽彧鏈変竴涓嚎璺澶勪簬閲囬泦褰撲腑 + + public int getCurrentCollectFlag() { + return currentCollectFlag; + } + + public void setCurrentCollectFlag(int currentCollectFlag) { + this.currentCollectFlag = currentCollectFlag; + } public int getId() { return id; diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteBeanDao.java b/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteBeanDao.java index f7b18d1..634e818 100644 --- a/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteBeanDao.java +++ b/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteBeanDao.java @@ -19,6 +19,18 @@ public interface RouteBeanDao { @Query("SELECT * FROM RouteBean") LiveData<List<RouteBean>> getAllRoutes(); + @Query("SELECT * FROM RouteBean where currentCollectFlag=1") + RouteBean getCurrRouteBean(); + + //鏇存柊鏁村紶琛ㄧ殑 閲囬泦鏍囧織 + + @Query("UPDATE RouteBean SET currentCollectFlag=0 ") + void setCurrtentNotCollectFlag(); + + //鏇存柊鏌愪釜id鐨勯噰闆嗘爣蹇� + + @Query("UPDATE RouteBean SET currentCollectFlag=1 where routeName=:name ") + void setCurrtentFlagWithName(String name); @Insert(onConflict = OnConflictStrategy.REPLACE) void insertRouteBean(RouteBean routeBean); diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteLineRepository.java b/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteLineRepository.java index 37e4593..7abecf5 100644 --- a/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteLineRepository.java +++ b/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteLineRepository.java @@ -1,6 +1,7 @@ package safeluck.drive.evaluation.DB.route; import android.app.Application; +import android.text.TextUtils; import androidx.lifecycle.LiveData; @@ -72,4 +73,15 @@ public LiveData<List<RouteBean>> getAllRouteBeans() { return routeBeans; } + + public void updateCurrCollectFlag(String name) { + WorkRoomDataBase.dataBaseWriteExecutor.execute(()->{ + + routeBeanDao.setCurrtentNotCollectFlag(); + if (!TextUtils.isEmpty(name)){ + + routeBeanDao.setCurrtentFlagWithName(name); + } + }); + } } diff --git a/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteLineViewModel.java b/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteLineViewModel.java index 3387e3e..142476d 100644 --- a/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteLineViewModel.java +++ b/app/src/main/java/safeluck/drive/evaluation/DB/route/RouteLineViewModel.java @@ -49,5 +49,7 @@ } - + public void updateCurrCollectFlag(String name) { + workRepository.updateCurrCollectFlag(name); + } } diff --git a/app/src/main/java/safeluck/drive/evaluation/app.java b/app/src/main/java/safeluck/drive/evaluation/app.java index 2541220..3dfe185 100644 --- a/app/src/main/java/safeluck/drive/evaluation/app.java +++ b/app/src/main/java/safeluck/drive/evaluation/app.java @@ -180,7 +180,10 @@ // CEventCenter.dispatchEvent(Constant.BIND_RTKCONFIG_TOPIC,cmd,0,""); break; case Constant.JUDGE_INFO: - + if (ExamPlatformData.getInstance().getTrainingMode()==ExamPlatformData.ROUTE_MODE){ + MyLog.i(TAG,"閲囬泦妯″紡涓嶆帴鍙楄瘎鍒ゆ秷鎭�"); + return; + } if(!TextUtils.isEmpty(json)){ final JKMessage0203 jkMessage0203 = new JKMessage0203(); diff --git a/app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java b/app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java index 754d143..ba47c06 100644 --- a/app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java +++ b/app/src/main/java/safeluck/drive/evaluation/bean/ExamPlatformData.java @@ -22,6 +22,7 @@ import safeluck.drive.evaluation.DB.appstatusdb.AppStatusWorker; import safeluck.drive.evaluation.app; import safeluck.drive.evaluation.platformMessage.PlatFormConstant; +import safeluck.drive.evaluation.routecollect.bean.RoadInfo; import safeluck.drive.evaluation.util.SPUtils; import safeluck.drive.evaluation.viewmodels.ExamPlatformModel; import safeluck.drive.evaluation.viewmodels.MainViewModel; @@ -34,6 +35,25 @@ public static final int PERSON_TYPE_STU = 1;//浜哄憳绫诲瀷涓哄鍛� public static final int COACH_ID = 1002;//鏁欑粌鏁版嵁搴撹〃閲岄潰鐨勫敮涓�id public static final int STU_ID = 1001;//瀛﹀憳鏁版嵁搴撹〃閲岄潰鐨勫敮涓�id + + + + //涓�id瀛﹀憳鏁版嵁搴撹〃閲岄潰鐨勫敮 + public static final int ROAD_ITEM_NONE = 0; + //涓�id瀛﹀憳鏁版嵁搴撹〃閲岄潰鐨勫敮 + public static final int ROAD_ITEM_CHANGE_LANE = 1; + //涓�id瀛﹀憳鏁版嵁搴撹〃閲岄潰鐨勫敮 + public static final int ROAD_ITEM_OVERTAKE = 2; + //涓�id瀛﹀憳鏁版嵁搴撹〃閲岄潰鐨勫敮 + public static final int ROAD_ITEM_STRAIGHT = 3; + //涓�id瀛﹀憳鏁版嵁搴撹〃閲岄潰鐨勫敮 + public static final int ROAD_ITEM_OPERATE_GEAR = 4; + public static final int ROAD_ITEM_START_CAR = 5; + public static final int ROAD_ITEM_PARK_SIDE = 6; + public static final int ROAD_ITEM_CROSS_WALK = 7; + public static final int ROAD_ITEM_BUS_AREA = 8; + public static final int ROAD_ITEM_SCHOOL_AREA = 9; + public static final int MODE_NONE = 0; public static final int EXAM_TYPE_LUKAO_Light = 3; @@ -159,6 +179,12 @@ private String rtkIP = "47.93.80.84"; public final int MAX_SCORE_DUCT = 20; private String coachID;//鏁欑粌鍛樿韩浠借瘉鍙风爜 + //淇濆瓨閲囬泦妯″紡涓嬬殑閬撹矾淇℃伅 + private RoadInfo roadInfo; + + //褰撳墠閲囬泦绾胯矾鐨勫悕绉� + private String routeLineName; + private int routeItem= ROAD_ITEM_NONE; public static ExamPlatformData getInstance() { return ourInstance; @@ -480,4 +506,32 @@ mapInfoHeads.put(mapHeadInfo.getType(),mapHeadInfo); SPUtils.saveHashMap(mapInfoHeads,app.getAppContext()); } + + public void setRouteCollectRoadInfo(RoadInfo roadInfo) { + this.roadInfo = roadInfo; + } + + public RoadInfo getRouteCollectRoadInfo() { + return roadInfo; + } + + public void setRouteCollectLineName(String string) { + this.routeLineName = string; + } + + public String getRouteLineName(){ + return routeLineName; + } + + /** + * 杩斿洖绾胯矾閲囬泦涓綋鍓嶉噰闆嗙殑椤圭洰 + * @return + */ + public int getCurrRouteItem() { + return routeItem; + } + + public void setCurrRouteItem(int roadItemChangeLane) { + this.routeItem = roadItemChangeLane; + } } diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/SignalConfigFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/SignalConfigFragment.java index bdc68e7..7726cb3 100644 --- a/app/src/main/java/safeluck/drive/evaluation/fragment/SignalConfigFragment.java +++ b/app/src/main/java/safeluck/drive/evaluation/fragment/SignalConfigFragment.java @@ -119,7 +119,7 @@ Toast.makeText(_mActivity, "鍙戦�佷俊鍙烽厤缃�", Toast.LENGTH_SHORT).show(); CThreadPoolExecutor.runInBackground(()->{ MyLog.i("click鏃堕棿锛屽彂閫佷俊鍙�"); - DataInitKt.sendSignalConfigToRemote(app.getAppContext()); +// DataInitKt.sendSignalConfigToRemote(app.getAppContext()); }); break; diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java index 1d378da..7c5be3e 100644 --- a/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java +++ b/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java @@ -7,15 +7,11 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import androidx.fragment.app.DialogFragment; import androidx.lifecycle.Observer; import androidx.lifecycle.ViewModelProviders; -import androidx.work.OneTimeWorkRequest; -import androidx.work.WorkManager; import android.os.Handler; import android.os.Message; -import android.text.Html; import android.text.SpannableString; import android.text.Spanned; import android.text.TextUtils; @@ -30,8 +26,7 @@ import android.widget.Button; import android.widget.ImageView; import android.widget.ListView; -import android.widget.RelativeLayout; -import android.widget.TableRow; +import android.widget.ScrollView; import android.widget.TextView; import android.widget.Toast; @@ -107,6 +102,8 @@ private static final String TAG = TrainFragment.class.getSimpleName(); private static final int ROUTE_COLLECT = 5;//绾胯矾閲囬泦鏍囧織 + private RouteBean currRouteBean; + private ScrollView scrollView; public static SupportFragment newInstance() { @@ -131,6 +128,11 @@ private static final int ADD_DATA = 1; private TextView tv_speed,tv_total_score,tv_name ,tv_start_time,tv_coach_name; + + //涓昏鐢ㄦ潵灞曠ず绾胯矾閲囬泦鏃剁殑淇℃伅 + private TextView tv_route_collect_info; + private StringBuilder stringBuilder = new StringBuilder(); + private double speed=0.0; private ImageView iv_head,iv_coach_head; WokViewModel wokViewModel; @@ -143,6 +145,12 @@ private String content;//鐢ㄤ互鐢熸垚浜岀淮鐮佺殑鍐呭 RouteCollectController routeCollectController; + + //瑕佹彃鍏ユ暟鎹簱鐨勮矾鍙d俊鎭� + private RouteCross routeCross; + + //瑕佹彃鍏ユ暟鎹簱鐨勮Е鍙戠嚎淇℃伅 + private RouteTriggerLine routeTriggerLine; private List<Integer> btn_ids = new ArrayList<Integer>(); private HashMap<String,Integer> routeCollect_btn_ids = new HashMap<>(); @@ -375,6 +383,7 @@ }else{ if (exam_type == ROUTE_COLLECT){ + items_score.setVisibility(View.GONE); items.setVisibility(View.GONE); route_collect.setVisibility(View.VISIBLE); @@ -397,6 +406,17 @@ mRouteBeans.clear(); if (routeBeans.size()>0){ + for (int i = 0; i < routeBeans.size(); i++) { + if (routeBeans.get(i).getCurrentCollectFlag()==1){ + currRouteBean = routeBeans.get(i); + ExamPlatformData.getInstance().setRouteCollectLineName(currRouteBean.getRouteName()); + stringBuilder.delete(0,stringBuilder.length()); + stringBuilder.append("褰撳墠閲囬泦绾胯矾鍚嶇О锛�"+currRouteBean.getRouteName()); + stringBuilder.append("\n"); + tv_route_collect_info.setText(stringBuilder.toString()); + break; + } + } mRouteBeans.addAll(routeBeans); } } @@ -553,6 +573,8 @@ private void initView(View view) { + + tv_route_collect_info = view.findViewById(R.id.tv_route_info); routeCollectController = new RouteCollectController(this); items = view.findViewById(R.id.items); items_score=view.findViewById(R.id.items_score); @@ -681,10 +703,12 @@ if (string.equalsIgnoreCase(bean.getRouteName())){ //鏈夐噸鍚嶇殑绾胯矾锛屾彁绀虹敤鎴峰苟涓嶅紑鍚嚎璺噰闆� Toast.makeText(_mActivity, "缁х画閲囬泦"+bean.getRouteName(), Toast.LENGTH_SHORT).show(); + routeLineViewModel.updateCurrCollectFlag(string); flag = true; break; } } + Toast.makeText(_mActivity, "绾胯矾閲囬泦", Toast.LENGTH_SHORT).show(); ExamPlatformData.getInstance().setTrainingMode(ExamPlatformData.ROUTE_MODE); exam_type = 5; @@ -693,8 +717,11 @@ items_score.setVisibility(View.GONE); route_collect.setVisibility(View.VISIBLE); if (!flag){ + RouteBean routeBean = new RouteBean(); routeBean.setRouteName(string); + routeBean.setCurrentCollectFlag(1); + ExamPlatformData.getInstance().setRouteCollectLineName(string); routeLineViewModel.insertRouteBean(routeBean); } @@ -715,7 +742,7 @@ if (exam_type == ROUTE_COLLECT){ Toast.makeText(_mActivity, "缁撴潫閲囬泦", Toast.LENGTH_SHORT).show(); - + routeLineViewModel.updateCurrCollectFlag(""); ExamPlatformData.getInstance().setTrainingMode(ExamPlatformData.MODE_NONE); exam_type = 0; examStatusViewModel.updateStartExam(exam_type); @@ -791,6 +818,34 @@ Map.Entry<String, Integer> next = iterator.next(); if (next.getValue()== v.getId()){ routeCollectController.startCollect(); + switch (next.getKey()){ + case "瓒呰溅": + ExamPlatformData.getInstance().setCurrRouteItem(ExamPlatformData.ROAD_ITEM_OVERTAKE); + break; + case "鍙樻洿杞﹂亾": + ExamPlatformData.getInstance().setCurrRouteItem(ExamPlatformData.ROAD_ITEM_CHANGE_LANE); + break; + case "鐩寸嚎琛岄┒": + ExamPlatformData.getInstance().setCurrRouteItem(ExamPlatformData.ROAD_ITEM_STRAIGHT); + break; + case "鍔犲噺妗�": + ExamPlatformData.getInstance().setCurrRouteItem(ExamPlatformData.ROAD_ITEM_OPERATE_GEAR); + break; + case "闈犺竟鍋滆溅": + ExamPlatformData.getInstance().setCurrRouteItem(ExamPlatformData.ROAD_ITEM_PARK_SIDE); + break; + case "閫氳繃浜鸿妯亾": + ExamPlatformData.getInstance().setCurrRouteItem(ExamPlatformData.ROAD_ITEM_CROSS_WALK); + break; + case "閫氳繃瀛︽牎鍖哄煙": + ExamPlatformData.getInstance().setCurrRouteItem(ExamPlatformData.ROAD_ITEM_SCHOOL_AREA); + break; + case "閫氳繃鍏叡姹借溅绔�": + ExamPlatformData.getInstance().setCurrRouteItem(ExamPlatformData.ROAD_ITEM_BUS_AREA); + break; + } + stringBuilder.append("褰撳墠閲囬泦椤圭洰锛�"+next.getKey()); + stringBuilder.append("\n"); Toast.makeText(_mActivity, String.format("鐐瑰嚮浜�%s",next.getKey()), Toast.LENGTH_SHORT).show(); break; } @@ -1050,26 +1105,128 @@ @Override public void beginCollectView() { Log.i(TAG,"BIND_RTK_INFO_MAP"); + CThreadPoolExecutor.runOnMainThread(()->{ + StatusDialog.with(_mActivity).setType(StatusDialog.Type.PROGRESS).setCancelable(true).show(); + }); + } @Override public void endCollectView() { Log.i(TAG,"endCollectView"); + CThreadPoolExecutor.runOnMainThread(()->{ +// StatusDialog.with(_mActivity).setType(StatusDialog.Type.PROGRESS).dismiss(); + }); + routeCollectController.endCollect(); } @Override public void routeItem(CollectPointResult collectPointResult) { Log.i(TAG,String.format("x=%f,y=%f",collectPointResult.getX(),collectPointResult.getY())); + RoadInfo roadInfo = ExamPlatformData.getInstance().getRouteCollectRoadInfo(); + + if (roadInfo != null && roadInfo.getStatus()==1){ + Log.i(TAG,"鍦ㄦ煇涓矾閲岄潰"+roadInfo.getRoad_id()); + routeTriggerLine.setX(collectPointResult.getX()); + routeTriggerLine.setY(collectPointResult.getY()); + routeTriggerLine.setType(ExamPlatformData.getInstance().getCurrRouteItem()); + routeTriggerLine.setRoad(roadInfo.getRoad_id()); + routeTriggerLine.setRouteline_id(currRouteBean.getId()); + routeLineViewModel.insertRouteTriggerLine(routeTriggerLine); + } + stringBuilder.append(String.format("x=%f,y=%f",collectPointResult.getX(),collectPointResult.getY())); + stringBuilder.append("\n"); + showRouteCollectInfoText(); + } + private void showRouteCollectInfoText(){ + CThreadPoolExecutor.runOnMainThread(new Runnable() { + @Override + public void run() { + tv_route_collect_info.setText(stringBuilder.toString()); + } + }); + } @Override public void roadinfo(RoadInfo roadInfo) { - + Log.i(TAG,String.format("閬撹矾淇℃伅%s",roadInfo.toString())); + //閬撹矾淇℃伅鏄病鏈夎繘琛屾湰鍦颁繚瀛樼殑锛屽鏋滃穿婧冪殑璇濓紝灏辨湁闂 + ExamPlatformData.getInstance().setRouteCollectRoadInfo(roadInfo); + stringBuilder.append(String.format("閬撹矾淇℃伅%s",roadInfo.toString())); + stringBuilder.append("\n"); + showRouteCollectInfoText(); } @Override public void roadcrossInfo(RoadCrossInfo roadCrossInfo) { + Log.i(TAG,String.format("閬撹矾璺彛淇℃伅%s",roadCrossInfo.toString())); + stringBuilder.append(String.format("閬撹矾璺彛淇℃伅%s",roadCrossInfo.toString())); + stringBuilder.append("\n"); + showRouteCollectInfoText(); + CThreadPoolExecutor.runInBackground(new Runnable() { + @Override + public void run() { + routeCross = new RouteCross(); + routeCross.setRouteline_id(currRouteBean.getId()); + routeCross.setRoad(roadCrossInfo.getRoad_id()); + routeCross.setIdx(roadCrossInfo.getCrossing_index()); + if (roadCrossInfo.getStatus() == 1){ + CThreadPoolExecutor.runOnMainThread(new Runnable() { + @Override + public void run() { + SelectDialogThree selectDialogThree = SelectDialogThree.newInstance("璺彛鐩磋","璺彛宸﹁浆寮�","璺彛鍙宠浆寮�","璺彛鎺夊ご"); + selectDialogThree.show(getFragmentManager(),"aaa"); + selectDialogThree.setSelectedListener(new SelectDialogThree.OnSelectedListener() { + @Override + public void makeYourChoice(int res) { + switch (res){ + case 0: + //鐩磋 + routeCross.setActive(1); + + break; + case 1: + //宸﹁浆寮� + routeCross.setActive(2); + break; + case 2: + //鍙宠浆寮� + routeCross.setActive(4); + break; + case 3: + //璋冨ご + routeCross.setActive(8); + break; + } + if (res != SelectDialogThree.SELECT_NONE){ + + routeLineViewModel.insertRouteCross(routeCross); + }else{ + Log.i(TAG,"鍦ㄨ矾鍙f病鏈夊仛鍑洪�夋嫨"); + } + } + }); + } + }); + } + + + } + }); + + + } + + private int getRouteLine_id() { + + for (int i = 0; i < mRouteBeans.size(); i++){ + if (mRouteBeans.get(i).getRouteName().equalsIgnoreCase(ExamPlatformData.getInstance().getRouteLineName())){ + return mRouteBeans.get(i).getId(); + } + } + return -1; } } diff --git a/app/src/main/java/safeluck/drive/evaluation/routecollect/bean/RoadCrossInfo.java b/app/src/main/java/safeluck/drive/evaluation/routecollect/bean/RoadCrossInfo.java index d04a0f4..e7e6751 100644 --- a/app/src/main/java/safeluck/drive/evaluation/routecollect/bean/RoadCrossInfo.java +++ b/app/src/main/java/safeluck/drive/evaluation/routecollect/bean/RoadCrossInfo.java @@ -41,4 +41,13 @@ public void setStatus(int status) { this.status = status; } + + @Override + public String toString() { + return "RoadCrossInfo{" + + "road_id=" + road_id + + ", crossing_index=" + crossing_index + + ", status=" + status + + '}'; + } } diff --git a/app/src/main/java/safeluck/drive/evaluation/routecollect/bean/RoadInfo.java b/app/src/main/java/safeluck/drive/evaluation/routecollect/bean/RoadInfo.java index cd63083..699cbed 100644 --- a/app/src/main/java/safeluck/drive/evaluation/routecollect/bean/RoadInfo.java +++ b/app/src/main/java/safeluck/drive/evaluation/routecollect/bean/RoadInfo.java @@ -31,4 +31,12 @@ public void setStatus(int status) { this.status = status; } + + @Override + public String toString() { + return "RoadInfo{" + + "road_id=" + road_id + + ", status=" + status + + '}'; + } } diff --git a/app/src/main/java/safeluck/drive/evaluation/widget/StatusDialog.java b/app/src/main/java/safeluck/drive/evaluation/widget/StatusDialog.java index 272820f..229e320 100644 --- a/app/src/main/java/safeluck/drive/evaluation/widget/StatusDialog.java +++ b/app/src/main/java/safeluck/drive/evaluation/widget/StatusDialog.java @@ -167,5 +167,12 @@ return progressDialog; } + public void dismiss() { + if (P.type == -1) { + throw new IllegalArgumentException("Please set type"); + } + progressDialog.dismiss(); + + } } } diff --git a/app/src/main/res/layout/layout_project_collect.xml b/app/src/main/res/layout/layout_project_collect.xml index 9d2d903..cb030bc 100644 --- a/app/src/main/res/layout/layout_project_collect.xml +++ b/app/src/main/res/layout/layout_project_collect.xml @@ -50,29 +50,30 @@ android:background="@drawable/btn_item_collect_bg" /> - <Button android:text="@string/turn_around" - android:layout_marginTop="@dimen/ui_margin_10dp" - android:layout_columnWeight="1" - android:layout_rowWeight="1" - android:id="@+id/btn_route_3" + <Button android:text="@string/crosswalk" android:layout_marginLeft="@dimen/ui_margin_20dp" android:layout_marginRight="@dimen/ui_margin_20dp" android:layout_marginBottom="10dp" android:textColor="@color/color_ffffff" - android:background="@drawable/btn_item_collect_bg" - /> + android:layout_width="wrap_content" + android:layout_columnWeight="1" + android:layout_marginTop="@dimen/ui_margin_10dp" - <Button android:text="@string/by_crossing" - android:layout_marginTop="@dimen/ui_margin_10dp" + android:layout_rowWeight="1" + android:id="@+id/btn_route_12" + android:background="@drawable/btn_item_collect_bg"/> + + <Button android:text="@string/straight_line" android:textColor="@color/color_ffffff" - android:layout_marginLeft="@dimen/ui_margin_20dp" - android:id="@+id/btn_route_4" - android:layout_marginRight="@dimen/ui_margin_20dp" - android:layout_marginBottom="10dp" - android:background="@drawable/btn_item_collect_bg" android:layout_columnWeight="1" android:layout_rowWeight="1" - /> + android:layout_marginTop="@dimen/ui_margin_10dp" + + android:layout_marginLeft="@dimen/ui_margin_20dp" + android:layout_marginRight="@dimen/ui_margin_20dp" + android:layout_marginBottom="10dp" + android:id="@+id/btn_route_13" + android:background="@drawable/btn_item_collect_bg"/> <Button android:text="@string/lane_change" android:layout_marginTop="@dimen/ui_margin_10dp" @@ -86,16 +87,6 @@ android:background="@drawable/btn_item_collect_bg" /> - <Button android:text="@string/side_by_side" - android:layout_columnWeight="1" - android:layout_rowWeight="1" - android:layout_marginLeft="@dimen/ui_margin_20dp" - android:layout_marginRight="@dimen/ui_margin_20dp" - android:id="@+id/btn_route_6" - android:layout_marginBottom="10dp" - android:textColor="@color/color_ffffff" - android:background="@drawable/btn_item_collect_bg" - /> <Button android:text="@string/over_take" android:layout_marginLeft="@dimen/ui_margin_20dp" @@ -127,11 +118,23 @@ android:layout_rowWeight="1" android:background="@drawable/btn_item_collect_bg"/> + <Button android:text="@string/side_by_side" + android:layout_columnWeight="1" + android:layout_rowWeight="1" + android:layout_marginLeft="@dimen/ui_margin_20dp" + android:layout_marginRight="@dimen/ui_margin_20dp" + android:id="@+id/btn_route_6" + android:visibility="gone" + android:layout_marginBottom="10dp" + android:textColor="@color/color_ffffff" + android:background="@drawable/btn_item_collect_bg" + /> <Button android:text="@string/junction_left" android:layout_marginLeft="@dimen/ui_margin_20dp" android:layout_marginRight="@dimen/ui_margin_20dp" android:layout_marginBottom="10dp" android:textColor="@color/color_ffffff" + android:visibility="gone" android:id="@+id/btn_route_10" android:layout_columnWeight="1" android:layout_rowWeight="1" @@ -142,33 +145,56 @@ android:layout_marginRight="@dimen/ui_margin_20dp" android:layout_marginBottom="10dp" android:textColor="@color/color_ffffff" + android:visibility="gone" android:layout_columnWeight="1" android:id="@+id/btn_route_11" android:layout_rowWeight="1" android:background="@drawable/btn_item_collect_bg"/> - - <Button android:text="@string/crosswalk" + <Button android:text="@string/turn_around" + android:layout_columnWeight="1" + android:layout_rowWeight="1" + android:id="@+id/btn_route_3" + android:visibility="gone" android:layout_marginLeft="@dimen/ui_margin_20dp" android:layout_marginRight="@dimen/ui_margin_20dp" android:layout_marginBottom="10dp" android:textColor="@color/color_ffffff" - android:layout_width="wrap_content" - android:layout_columnWeight="1" - android:layout_rowWeight="1" - android:id="@+id/btn_route_12" - android:background="@drawable/btn_item_collect_bg"/> + android:background="@drawable/btn_item_collect_bg" + /> - <Button android:text="@string/straight_line" + <Button android:text="@string/by_crossing" + android:textColor="@color/color_ffffff" - android:layout_columnWeight="1" - android:layout_rowWeight="1" android:layout_marginLeft="@dimen/ui_margin_20dp" + android:id="@+id/btn_route_4" + android:visibility="gone" android:layout_marginRight="@dimen/ui_margin_20dp" android:layout_marginBottom="10dp" - android:id="@+id/btn_route_13" - android:background="@drawable/btn_item_collect_bg"/> + android:background="@drawable/btn_item_collect_bg" + android:layout_columnWeight="1" + android:layout_rowWeight="1" + /> + </GridLayout> - +<ScrollView + android:layout_width="380dp" + android:id="@+id/scrollview" + android:layout_height="match_parent"> + <TextView + android:layout_width="380dp" + android:layout_height="wrap_content" + android:background="@drawable/stu_score_title" + android:id="@+id/tv_route_info" + android:gravity="center_vertical" + android:descendantFocusability="blocksDescendants" + android:textColor="#FFFFFF" + android:focusable="false" + android:focusableInTouchMode="false" + android:drawablePadding="5dp" + android:paddingLeft="19dp" + android:textSize="@dimen/network_train_textsize22px" + android:text="椤圭洰鍒楄〃"/> +</ScrollView> </LinearLayout> -- Gitblit v1.8.0