diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt index c04cba92ad..262e87b6cb 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt @@ -3,11 +3,12 @@ package com.mogo.eagle.core.function.hmi.ui import android.animation.Animator import android.os.Bundle import android.text.TextUtils +import android.util.Log import android.view.Gravity import android.view.View import android.view.WindowManager import android.view.WindowManager.LayoutParams -import android.view.animation.OvershootInterpolator +import android.view.animation.* import androidx.lifecycle.lifecycleScope import com.alibaba.android.arouter.facade.annotation.Route import com.mogo.commons.mvp.MvpFragment @@ -56,6 +57,7 @@ import kotlinx.coroutines.* import record_cache.RecordPanelOuterClass import java.util.* + /** * @author xiaoyuzhou * @date 2021/8/3 2:40 下午 @@ -393,11 +395,11 @@ class MoGoHmiFragment : MvpFragment(), if (mDebugSettingView == null) { mDebugSettingView = DebugSettingView(it) } - var side =SidePattern.RIGHT + var side = SidePattern.RIGHT var gravity = Gravity.RIGHT //调试窗默认靠右显示,Bus的乘客端右端有视图覆盖,调试窗靠左显示 - if(AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode) && - AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)){ + if (AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode) && + AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) { side = SidePattern.LEFT gravity = Gravity.LEFT } @@ -490,9 +492,8 @@ class MoGoHmiFragment : MvpFragment(), if (mWarningFloat != null && !TextUtils.isEmpty(ttsContent) && playTts) { CallerLogger.d("$M_HMI$TAG", "---> ttsContent = $ttsContent") AIAssist.getInstance(activity) - .speakTTSVoice(ttsContent) + .speakTTSVoice(ttsContent) } - showWarning(WarningDirectionEnum.ALERT_WARNING_ALL) } override fun onDismiss() { @@ -622,7 +623,25 @@ class MoGoHmiFragment : MvpFragment(), * @see WarningDirectionEnum */ override fun showWarning(direction: WarningDirectionEnum) { + Log.d(TAG,"showWarning====") flV2XWarningView?.showWarning(direction) + flicker(flV2XWarningView) + } + + /** + * 闪动动画 + */ + fun flicker(view: View) { + val alphaAnimation = AlphaAnimation(0f, 1.0f) + alphaAnimation.setDuration(600) + alphaAnimation.setInterpolator(LinearInterpolator()) + alphaAnimation.setRepeatCount(Animation.INFINITE) + alphaAnimation.setRepeatMode(Animation.REVERSE) + view.startAnimation(alphaAnimation) + } + + fun clearAnimation(view: View) { + view.clearAnimation() } /** @@ -633,10 +652,12 @@ class MoGoHmiFragment : MvpFragment(), */ override fun showWarning(direction: WarningDirectionEnum, closeTime: Long) { flV2XWarningView?.showWarning(direction, closeTime) + flicker(flV2XWarningView) } override fun dismissWarning(direction: WarningDirectionEnum) { flV2XWarningView?.dismissWarning(direction) + clearAnimation(flV2XWarningView) } /** diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/V2XWarningView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/V2XWarningView.kt index 52e42c7373..ae8b2f47b3 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/V2XWarningView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/V2XWarningView.kt @@ -53,15 +53,15 @@ class V2XWarningView @JvmOverloads constructor( * @param closeTime 倒计时 */ fun showWarning(direction: WarningDirectionEnum, closeTime: Long) { - CallerLogger.d("$M_HMI$TAG", "预警红边:预警方向->$direction 预警倒计时->$closeTime") +// CallerLogger.d("$M_HMI$TAG", "预警红边:预警方向->$direction 预警倒计时->$closeTime") + Log.d(TAG, "预警红边:预警方向->$direction 预警倒计时->$closeTime") UiThreadHandler.post { - // 如果传入的不是关闭显示,则设置倒计时,定时关闭红框警示 if (direction != ALERT_WARNING_NON) { removeCallbacks(closeWarningTask) postDelayed(closeWarningTask, closeTime) } - when (ALERT_WARNING_TOP_RIGHT) { + when (direction) { ALERT_WARNING_NON -> { removeCallbacks(closeWarningTask) hmiWarningTopImg.visibility = View.GONE @@ -144,7 +144,7 @@ class V2XWarningView @JvmOverloads constructor( hmiWarningRightBottomImg.visibility = View.GONE } ALERT_WARNING_TOP_LEFT -> { - hmiWarningTopImg.visibility = View.VISIBLE + hmiWarningTopImg.visibility = View.GONE hmiWarningRightImg.visibility = View.GONE hmiWarningBottomImg.visibility = View.GONE hmiWarningLeftImg.visibility = View.GONE @@ -154,14 +154,14 @@ class V2XWarningView @JvmOverloads constructor( hmiWarningRightBottomImg.visibility = View.GONE } ALERT_WARNING_ALL -> { - hmiWarningTopImg.visibility = View.GONE + hmiWarningTopImg.visibility = View.VISIBLE hmiWarningRightImg.visibility = View.GONE hmiWarningBottomImg.visibility = View.GONE hmiWarningLeftImg.visibility = View.GONE - hmiWarningLeftTopImg.visibility = View.VISIBLE - hmiWarningLeftBottomImg.visibility = View.VISIBLE - hmiWarningRightTopImg.visibility = View.VISIBLE - hmiWarningRightBottomImg.visibility = View.VISIBLE + hmiWarningLeftTopImg.visibility = View.GONE + hmiWarningLeftBottomImg.visibility = View.GONE + hmiWarningRightTopImg.visibility = View.GONE + hmiWarningRightBottomImg.visibility = View.GONE } } } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/module_hmi_warning_v2x.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/module_hmi_warning_v2x.xml index ee46c71e06..218813fdb9 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/module_hmi_warning_v2x.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/module_hmi_warning_v2x.xml @@ -53,7 +53,7 @@ + + android:type="radial" /> \ No newline at end of file diff --git a/core/mogo-core-res/src/main/function-hmi-res/drawable/module_hmi_warning_bkg_left_top.xml b/core/mogo-core-res/src/main/function-hmi-res/drawable/module_hmi_warning_bkg_left_top.xml index 1cf7b8045d..3c96aa5ca2 100644 --- a/core/mogo-core-res/src/main/function-hmi-res/drawable/module_hmi_warning_bkg_left_top.xml +++ b/core/mogo-core-res/src/main/function-hmi-res/drawable/module_hmi_warning_bkg_left_top.xml @@ -1,8 +1,14 @@ + + android:angle="315" + android:centerX="0" + android:centerY="0" + android:endColor="@color/module_hmi_warning_bg_color_end" + android:gradientRadius="@dimen/dp_1200" + android:startColor="@color/module_hmi_warning_bg_color" + android:type="radial" /> \ No newline at end of file diff --git a/core/mogo-core-res/src/main/function-hmi-res/drawable/module_hmi_warning_bkg_right_bottom.xml b/core/mogo-core-res/src/main/function-hmi-res/drawable/module_hmi_warning_bkg_right_bottom.xml index 4524166cb2..8fc2c3946b 100644 --- a/core/mogo-core-res/src/main/function-hmi-res/drawable/module_hmi_warning_bkg_right_bottom.xml +++ b/core/mogo-core-res/src/main/function-hmi-res/drawable/module_hmi_warning_bkg_right_bottom.xml @@ -1,8 +1,14 @@ + + android:type="radial" /> \ No newline at end of file diff --git a/core/mogo-core-res/src/main/function-hmi-res/drawable/module_hmi_warning_bkg_right_top.xml b/core/mogo-core-res/src/main/function-hmi-res/drawable/module_hmi_warning_bkg_right_top.xml index cd4f977de2..077c625cc3 100644 --- a/core/mogo-core-res/src/main/function-hmi-res/drawable/module_hmi_warning_bkg_right_top.xml +++ b/core/mogo-core-res/src/main/function-hmi-res/drawable/module_hmi_warning_bkg_right_top.xml @@ -1,8 +1,14 @@ + + android:type="radial" /> \ No newline at end of file diff --git a/core/mogo-core-res/src/main/res/values/color.xml b/core/mogo-core-res/src/main/res/values/color.xml index 2c85694472..a9120176a9 100644 --- a/core/mogo-core-res/src/main/res/values/color.xml +++ b/core/mogo-core-res/src/main/res/values/color.xml @@ -6,7 +6,8 @@ #323C6F #FFFFFF - #8C7F2503 + #727F2503 + #007F2503 \ No newline at end of file diff --git a/core/mogo-core-res/src/main/res/values/dimens.xml b/core/mogo-core-res/src/main/res/values/dimens.xml index ddb86d6869..8cdb61e3f0 100644 --- a/core/mogo-core-res/src/main/res/values/dimens.xml +++ b/core/mogo-core-res/src/main/res/values/dimens.xml @@ -6,6 +6,8 @@ 65px 200px 100px + 1200px + 1600px 300px 300px 60px diff --git a/modules/mogo-module-common/src/main/res/values-xhdpi-2560x1600/dimens.xml b/modules/mogo-module-common/src/main/res/values-xhdpi-2560x1600/dimens.xml index 182125356c..d01d8415ac 100644 --- a/modules/mogo-module-common/src/main/res/values-xhdpi-2560x1600/dimens.xml +++ b/modules/mogo-module-common/src/main/res/values-xhdpi-2560x1600/dimens.xml @@ -15,4 +15,6 @@ 144px 186px 300px + 730px + 1600px