From a573047b6c9748bcc671949e3746500c376c8a9f Mon Sep 17 00:00:00 2001 From: zhongchao Date: Mon, 21 Jun 2021 20:17:20 +0800 Subject: [PATCH] add dispatch remind dialog and UI changes --- .idea/misc.xml | 2 +- .../module/adas/AdasAutoPilotManager.java | 29 ++++++- .../adas/view/DispatchRemindDialog.java | 70 +++++++++++++++ .../drawable/module_adas_timer_bg_shape.xml | 4 + .../layout/dialog_adas_dispatch_remind.xml | 86 ++++++++++++++++++- .../res/values-xhdpi-2560x1440/dimens.xml | 11 +++ .../src/main/res/values/colors.xml | 5 +- .../src/main/res/values/dimens.xml | 11 +++ .../src/main/res/values/strings.xml | 7 ++ 9 files changed, 218 insertions(+), 7 deletions(-) create mode 100644 modules/mogo-module-adas/src/main/res/drawable/module_adas_timer_bg_shape.xml create mode 100644 modules/mogo-module-adas/src/main/res/values/strings.xml diff --git a/.idea/misc.xml b/.idea/misc.xml index 09cc32c567..733acb1920 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -8,7 +8,7 @@ - + \ No newline at end of file diff --git a/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/AdasAutoPilotManager.java b/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/AdasAutoPilotManager.java index 8701beb42c..6fdbfda35e 100644 --- a/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/AdasAutoPilotManager.java +++ b/modules/mogo-module-adas/src/main/java/com/mogo/module/adas/AdasAutoPilotManager.java @@ -3,15 +3,21 @@ package com.mogo.module.adas; import android.content.Context; import com.mogo.module.adas.entity.AdasAutoPilotLocReceiverBean; +import com.mogo.module.adas.view.DispatchRemindDialog; import com.mogo.module.common.MogoApisHandler; import com.mogo.service.connection.IMogoOnMessageListener; +import com.mogo.utils.logger.Logger; -public class AdasAutoPilotManager implements IMogoOnMessageListener { +//todo 自动驾驶车辆状态上报,路线上报,监听自动驾驶状态,结束置空 autoPilotLocReceiverBean +public class AdasAutoPilotManager implements IMogoOnMessageListener, DispatchRemindDialog.IDispatchRemindClickListener { + private static final String TAG = "AdasAutoPilotManager"; private static volatile AdasAutoPilotManager instance; private static final byte[] obj = new byte[0]; private static final int MSG_SOCKET_TYPE = 1; private Context mContext; + private DispatchRemindDialog dispatchRemindDialog; + private AdasAutoPilotLocReceiverBean autoPilotLocReceiverBean; private AdasAutoPilotManager() { @@ -33,6 +39,8 @@ public class AdasAutoPilotManager implements IMogoOnMessageListener= 0) { + TIMER--; + tvTimer.setText(TIMER); + handler.sendEmptyMessage(MSG_TYPE_TIMER); + } else { + hide(); + } + } + } + }; + public DispatchRemindDialog(@NonNull Context context) { super(context); setContentView(R.layout.dialog_adas_dispatch_remind); + tvTimer = findViewById(R.id.module_adas_dispatch_remind_timer); + tvLoc = findViewById(R.id.module_adas_dispatch_remind_loc); + tvAffirm = findViewById(R.id.module_adas_dispatch_remind_affirm); + tvCancel = findViewById(R.id.module_adas_dispatch_remind_cancel); + tvTimer.setText(TIMER); + tvAffirm.setOnClickListener(v -> { + if (mListener != null) { + mListener.affirm(); + } + }); + tvCancel.setOnClickListener(v -> { + if (mListener != null) { + mListener.cancel(); + } + }); } + public void show(String locContent) { + show(); + handler.sendEmptyMessage(MSG_TYPE_TIMER); + tvLoc.setText(locContent); + } + public void hide() { + dismiss(); + mListener = null; + } + + public void addIDispatchRemindListener(IDispatchRemindClickListener listener) { + if (listener != null) { + Logger.d(TAG, "addIDispatchRemindListener has listener"); + return; + } + this.mListener = listener; + } + + public interface IDispatchRemindClickListener { + + void affirm(); + + void cancel(); + } } diff --git a/modules/mogo-module-adas/src/main/res/drawable/module_adas_timer_bg_shape.xml b/modules/mogo-module-adas/src/main/res/drawable/module_adas_timer_bg_shape.xml new file mode 100644 index 0000000000..105edfe4de --- /dev/null +++ b/modules/mogo-module-adas/src/main/res/drawable/module_adas_timer_bg_shape.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/modules/mogo-module-adas/src/main/res/layout/dialog_adas_dispatch_remind.xml b/modules/mogo-module-adas/src/main/res/layout/dialog_adas_dispatch_remind.xml index c044260fdb..87a7b0438f 100644 --- a/modules/mogo-module-adas/src/main/res/layout/dialog_adas_dispatch_remind.xml +++ b/modules/mogo-module-adas/src/main/res/layout/dialog_adas_dispatch_remind.xml @@ -1,13 +1,93 @@ + android:background="@color/adas_dispatch_remind_background"> + + + + + android:layout_height="wrap_content" + android:layout_marginTop="@dimen/adas_dispatch_remind_dialog_content_margin_top" + android:text="@string/module_adas_dispatch_remind_content" + android:textColor="@android:color/white" + android:textSize="@dimen/adas_dispatch_remind_dialog_content_size" + app:layout_constraintLeft_toLeftOf="parent" + app:layout_constraintRight_toRightOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + + + + + + + + + + \ No newline at end of file diff --git a/modules/mogo-module-adas/src/main/res/values-xhdpi-2560x1440/dimens.xml b/modules/mogo-module-adas/src/main/res/values-xhdpi-2560x1440/dimens.xml index 1ad05815bc..8d0e47b252 100644 --- a/modules/mogo-module-adas/src/main/res/values-xhdpi-2560x1440/dimens.xml +++ b/modules/mogo-module-adas/src/main/res/values-xhdpi-2560x1440/dimens.xml @@ -3,4 +3,15 @@ 950px 540px 32px + 48px + 55px + 38px + 179px + 56px + 251px + 152px + 474.5px + 20px + 46px + 24px \ No newline at end of file diff --git a/modules/mogo-module-adas/src/main/res/values/colors.xml b/modules/mogo-module-adas/src/main/res/values/colors.xml index 7ec5c235fd..9da2da7c82 100644 --- a/modules/mogo-module-adas/src/main/res/values/colors.xml +++ b/modules/mogo-module-adas/src/main/res/values/colors.xml @@ -1,6 +1,9 @@ - #1F9BFE + #1F9BFE #E63B4577 + #8E9DD4 #4D000000 + #66B8BFE8 + \ No newline at end of file diff --git a/modules/mogo-module-adas/src/main/res/values/dimens.xml b/modules/mogo-module-adas/src/main/res/values/dimens.xml index 1ad05815bc..8d0e47b252 100644 --- a/modules/mogo-module-adas/src/main/res/values/dimens.xml +++ b/modules/mogo-module-adas/src/main/res/values/dimens.xml @@ -3,4 +3,15 @@ 950px 540px 32px + 48px + 55px + 38px + 179px + 56px + 251px + 152px + 474.5px + 20px + 46px + 24px \ No newline at end of file diff --git a/modules/mogo-module-adas/src/main/res/values/strings.xml b/modules/mogo-module-adas/src/main/res/values/strings.xml new file mode 100644 index 0000000000..4ebcc7764f --- /dev/null +++ b/modules/mogo-module-adas/src/main/res/values/strings.xml @@ -0,0 +1,7 @@ + + + 调度确认 + 车辆将开启自动驾驶,并行驶至: + 确认 + 取消 + \ No newline at end of file