From dded3453219dae823e915157716026989a0ee776 Mon Sep 17 00:00:00 2001 From: lizhanwei <Dana_Lee1016@126.com> Date: 星期二, 14 一月 2020 15:53:07 +0800 Subject: [PATCH] 删除MainActivity的MainViewModel示例调用;单机训练和联网考试加入speed显示;速度保留小数点后两位 --- app/src/main/java/safeluck/drive/evaluation/Constant.java | 1 app/src/main/java/safeluck/drive/evaluation/app.java | 7 +++ app/src/main/java/safeluck/drive/evaluation/MainActivity.java | 9 ---- app/src/main/res/values/strings.xml | 2 app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java | 36 ++++++++++++----- app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java | 27 +++++++++++++ app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java | 2 - 7 files changed, 60 insertions(+), 24 deletions(-) diff --git a/app/src/main/java/safeluck/drive/evaluation/Constant.java b/app/src/main/java/safeluck/drive/evaluation/Constant.java index 2f5aec6..a10d45f 100644 --- a/app/src/main/java/safeluck/drive/evaluation/Constant.java +++ b/app/src/main/java/safeluck/drive/evaluation/Constant.java @@ -65,5 +65,6 @@ public static final int HAS_BEEN_START_EXAM = 1; public static final int REAL_TIME_CAR_POS = 0x000E; public static final String REAL_TIME_POS_CAR_TOPIC = "real_time_car_pos_topic"; + public static final String BIND_SPEED_TOPIC = "BIND_SPEED_TOPIC"; public static String exam_enter_exitdata="exam_enter_exitdata"; } diff --git a/app/src/main/java/safeluck/drive/evaluation/MainActivity.java b/app/src/main/java/safeluck/drive/evaluation/MainActivity.java index cea004a..4584285 100644 --- a/app/src/main/java/safeluck/drive/evaluation/MainActivity.java +++ b/app/src/main/java/safeluck/drive/evaluation/MainActivity.java @@ -163,15 +163,6 @@ MyLog.i(TAG, "onCreate"); - MainViewModel mainViewModel = ViewModelProviders.of(this).get(MainViewModel.class); - mainViewModel.getJson().observe(this, new Observer<String>() { - @Override - public void onChanged(@Nullable String json) { - Toast.makeText(MainActivity.this, json, Toast.LENGTH_SHORT).show(); - MyLog.i(TAG, "json==========" + json + " ThreadName:" + Thread.currentThread().getName()); - - } - }); //鍔犺浇鏍笷ragment if (findFragment(HomeFragment.class) == null) { diff --git a/app/src/main/java/safeluck/drive/evaluation/app.java b/app/src/main/java/safeluck/drive/evaluation/app.java index c475164..4d44a33 100644 --- a/app/src/main/java/safeluck/drive/evaluation/app.java +++ b/app/src/main/java/safeluck/drive/evaluation/app.java @@ -207,6 +207,13 @@ WorkManager.getInstance(getApplicationContext()).enqueue(examStatusWorker); break; case Constant.REAL_TIME_CAR_POS: + try { + JSONObject jsSpeed = new JSONObject(json); + double speed = jsSpeed.getDouble("speed"); + CEventCenter.dispatchEvent(Constant.BIND_SPEED_TOPIC,cmd,0,speed); + } catch (JSONException e) { + e.printStackTrace(); + } CEventCenter.dispatchEvent(Constant.REAL_TIME_POS_CAR_TOPIC,cmd,0,json); break; diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java index f71e22f..a4c77f5 100644 --- a/app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java +++ b/app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java @@ -25,8 +25,6 @@ import com.anyun.exam.lib.MyLog; import com.google.gson.Gson; -import org.json.JSONArray; -import org.json.JSONObject; import java.util.List; diff --git a/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java b/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java index 5a435cc..4d648e7 100644 --- a/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java +++ b/app/src/main/java/safeluck/drive/evaluation/fragment/NetWorkTrainFragment.java @@ -1,5 +1,6 @@ package safeluck.drive.evaluation.fragment; +import android.content.Context; import android.os.Bundle; import android.os.Handler; @@ -40,6 +41,8 @@ import safeluck.drive.evaluation.adapter.ScoreAdapter; import safeluck.drive.evaluation.DB.exam_status.ExamStatus; import safeluck.drive.evaluation.bean.ScoreBean; +import safeluck.drive.evaluation.cEventCenter.CEventCenter; +import safeluck.drive.evaluation.cEventCenter.ICEventListener; import safeluck.drive.evaluation.customview.ArrowView; import safeluck.drive.evaluation.customview.HouseView; @@ -66,8 +69,10 @@ private ExamStatusViewModel examStatusViewModel; private static final int ADD_DATA = 1; private TextView tv_speed; + private double speed=0.0; private List<ScoreBean> mArrayList = new ArrayList<>(); + private static final int SPEED_DATA = 2; public static SupportFragment newInstance() { return new NetWorkTrainFragment(); @@ -82,6 +87,9 @@ av_park.setColor(whatPaintColor(examStatusList.get(2))); av_curve.setColor(whatPaintColor(examStatusList.get(3))); av_zhijiao.setColor(whatPaintColor(examStatusList.get(4))); + } + if (msg.what == SPEED_DATA){ + tv_speed.setText(getResources().getString(R.string.speed,speed)); } return false; } @@ -204,7 +212,7 @@ houseView = view.findViewById(R.id.hv); tv_speed = view.findViewById(R.id.tv_speed); - tv_speed.setText(getResources().getString(R.string.speed,56.5)); + tv_speed.setText(getResources().getString(R.string.speed,speed)); view.findViewById(R.id.btn_return).setOnClickListener(this); mListView = view.findViewById(R.id.lv); @@ -264,5 +272,22 @@ } } + private ICEventListener icEventListener = new ICEventListener() { + @Override + public void onCEvent(String topic, int msgCode, int resultCode, Object obj) { + speed = (double)obj; + mHandler.obtainMessage(SPEED_DATA).sendToTarget(); + } + }; + @Override + public void onAttach(Context context) { + super.onAttach(context); + CEventCenter.onBindEvent(true,icEventListener,Constant.BIND_SPEED_TOPIC); + } + @Override + public void onDetach() { + super.onDetach(); + CEventCenter.onBindEvent(false,icEventListener,Constant.BIND_SPEED_TOPIC); + } } 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 49ce3c7..ddb9b01 100644 --- a/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java +++ b/app/src/main/java/safeluck/drive/evaluation/fragment/TrainFragment.java @@ -69,11 +69,12 @@ private ExamStatusViewModel examStatusViewModel; private static final int ADD_DATA = 1; + private static final int SPEED_DATA = 2; private List<ScoreBean> mArrayList = new ArrayList<>(); private View tv_stop; private TextView tv_speed; - + private double speed=0.0; private Handler mHandler = new Handler(new Handler.Callback() { @Override @@ -85,20 +86,14 @@ av_curve.setColor(whatPaintColor(examStatusList.get(3))); av_zhijiao.setColor(whatPaintColor(examStatusList.get(4))); } + if (msg.what == SPEED_DATA){ + tv_speed.setText(getResources().getString(R.string.speed,speed)); + } return false; } }); - @Override - public void onAttach(Context context) { - super.onAttach(context); - } - - @Override - public void onDetach() { - super.onDetach(); - } public static SupportFragment newInstance(){ return new TrainFragment(); @@ -175,7 +170,7 @@ houseView = view.findViewById(R.id.hv); tv_speed = view.findViewById(R.id.tv_speed); - tv_speed.setText(getResources().getString(R.string.speed,123.4)); + tv_speed.setText(getResources().getString(R.string.speed,speed)); view.findViewById(R.id.btn_return).setOnClickListener(this); mListView = view.findViewById(R.id.lv); tv_stop = view.findViewById(R.id.tv_stop); @@ -283,4 +278,23 @@ break; } } + + private ICEventListener icEventListener = new ICEventListener() { + @Override + public void onCEvent(String topic, int msgCode, int resultCode, Object obj) { + speed = (double)obj; + mHandler.obtainMessage(SPEED_DATA).sendToTarget(); + } + }; + @Override + public void onAttach(Context context) { + super.onAttach(context); + CEventCenter.onBindEvent(true,icEventListener,Constant.BIND_SPEED_TOPIC); + } + + @Override + public void onDetach() { + super.onDetach(); + CEventCenter.onBindEvent(false,icEventListener,Constant.BIND_SPEED_TOPIC); + } } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index b5e88d3..3b1f022 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -24,6 +24,6 @@ <string name="rtk_config_sn">SN:%1$s</string> <string name="rtk_connect_status">RTK杩炴帴鐘舵�侊細%1$d</string> <string name="rtk_config_login">RTK鐧诲綍缁撴灉锛�%1$d</string> - <string name="speed">杞﹂��:%1$.1fkm/h</string> + <string name="speed">杞﹂��:%1$.2fkm/h</string> <string name="licheng">宸茶椹�:451km</string> </resources> -- Gitblit v1.8.0