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 377b83626b..9acc2a3670 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 @@ -29,6 +29,7 @@ import com.mogo.eagle.core.function.hmi.notification.enums.SidePattern import com.mogo.eagle.core.function.hmi.ui.camera.CameraListView import com.mogo.eagle.core.function.hmi.ui.notice.NoticeBannerView import com.mogo.eagle.core.function.hmi.ui.notice.NoticeNormalBannerView +import com.mogo.eagle.core.function.hmi.ui.setting.DebugSettingView import com.mogo.eagle.core.function.hmi.ui.widget.V2XNotificationView import com.mogo.eagle.core.utilcode.util.ThreadUtils import com.mogo.module.common.enums.EventTypeEnum @@ -46,8 +47,17 @@ class MoGoHmiFragment : MvpFragment MoGoWarningContract.View { private val TAG = "MoGoHmiFragment" + // DebugSettingView + private var mDebugSettingViewFloat: WarningFloat.Builder? = null + private var mDebugSettingView: DebugSettingView? = null + + // V2X、OBU、云端推送,预警弹窗 private var mWarningFloat: WarningFloat.Builder? = null + + // 通知、云公告弹窗 private var mNoticeFloat: WarningFloat.Builder? = null + + // 超视距、路侧、前车直播 private var cameraListView: CameraListView? = null private var cameraViewFloat: WarningFloat.Builder? = null @@ -80,6 +90,50 @@ class MoGoHmiFragment : MvpFragment showCameraList(CallerMonitorManager.getCameraList()) } } + + viewShowDebugView.setOnLongClickListener { + Log.d(TAG, "长按显示状态工具栏") + context?.let { + if (mDebugSettingViewFloat != null) { + WarningFloat.dismiss(mDebugSettingViewFloat!!.config.floatTag, false) + mDebugSettingViewFloat = null + mDebugSettingView = null + } else { + if (mDebugSettingView == null) { + mDebugSettingView = DebugSettingView(it) + } + mDebugSettingViewFloat = WarningFloat.with(it) + .setTag("DebugSettingView") + .setLayout(mDebugSettingView!!) + .setSidePattern(SidePattern.RIGHT) + .setGravity(Gravity.RIGHT, offsetY = 70) + .setImmersionStatusBar(true) + .setAnimator(object : DefaultAnimator() { + override fun enterAnim( + view: View, + params: WindowManager.LayoutParams, + windowManager: WindowManager, + sidePattern: SidePattern + ): Animator? = + super.enterAnim(view, params, windowManager, sidePattern) + ?.apply { + interpolator = OvershootInterpolator() + } + + override fun exitAnim( + view: View, + params: WindowManager.LayoutParams, + windowManager: WindowManager, + sidePattern: SidePattern + ): Animator? = + super.exitAnim(view, params, windowManager, sidePattern) + ?.setDuration(200) + }) + .show() + } + } + true + } } /** @@ -370,40 +424,41 @@ class MoGoHmiFragment : MvpFragment mNoticeFloat = it?.let { it1 -> noticeBannerView?.let { it2 -> WarningFloat.with(it1) - .setTag(tag) - .setLayout(it2) - .setSidePattern(SidePattern.TOP) - .setCountDownTime(10000) - .setGravity(Gravity.CENTER_HORIZONTAL, offsetY = 110) - .setImmersionStatusBar(true) - .addWarningStatusListener(object : IMoGoWarningStatusListener { - override fun onShow() { - // 创建弹窗成功才进行TTS播报 + .setTag(tag) + .setLayout(it2) + .setSidePattern(SidePattern.TOP) + .setCountDownTime(10000) + .setGravity(Gravity.CENTER_HORIZONTAL, offsetY = 110) + .setImmersionStatusBar(true) + .addWarningStatusListener(object : IMoGoWarningStatusListener { + override fun onShow() { + // 创建弹窗成功才进行TTS播报 // AIAssist.getInstance(activity) // .speakTTSVoice("") - } - }) - .setAnimator(object : DefaultAnimator() { - override fun enterAnim( - view: View, - params: WindowManager.LayoutParams, - windowManager: WindowManager, - sidePattern: SidePattern - ): Animator? = - super.enterAnim(view, params, windowManager, sidePattern)?.apply { - interpolator = OvershootInterpolator() - } + } + }) + .setAnimator(object : DefaultAnimator() { + override fun enterAnim( + view: View, + params: WindowManager.LayoutParams, + windowManager: WindowManager, + sidePattern: SidePattern + ): Animator? = + super.enterAnim(view, params, windowManager, sidePattern) + ?.apply { + interpolator = OvershootInterpolator() + } - override fun exitAnim( - view: View, - params: WindowManager.LayoutParams, - windowManager: WindowManager, - sidePattern: SidePattern - ): Animator? = - super.exitAnim(view, params, windowManager, sidePattern) - ?.setDuration(200) - }) - .show() + override fun exitAnim( + view: View, + params: WindowManager.LayoutParams, + windowManager: WindowManager, + sidePattern: SidePattern + ): Animator? = + super.exitAnim(view, params, windowManager, sidePattern) + ?.setDuration(200) + }) + .show() } } } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SpeedPanelView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SpeedPanelView.kt index c874d93181..c1be2d3062 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SpeedPanelView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SpeedPanelView.kt @@ -42,8 +42,6 @@ class SpeedPanelView @JvmOverloads constructor( var mContext: Context var mSpeedChartView: SpeedChartView - var mDebugSettingViewFloat: WarningFloat.Builder? = null - var mDebugSettingView: DebugSettingView? = null var mLatLng: Location? = null @@ -65,49 +63,7 @@ class SpeedPanelView @JvmOverloads constructor( } private fun initEvent(context: Context) { - setOnLongClickListener { - Log.d(TAG, "长按显示状态工具栏") - context.let { - if (mDebugSettingViewFloat != null) { - WarningFloat.dismiss(mDebugSettingViewFloat!!.config.floatTag, false) - mDebugSettingViewFloat = null - mDebugSettingView = null - } else { - if (mDebugSettingView == null) { - mDebugSettingView = DebugSettingView(it) - } - mDebugSettingViewFloat = WarningFloat.with(it) - .setTag("DebugSettingView") - .setLayout(mDebugSettingView!!) - .setSidePattern(SidePattern.RIGHT) - .setGravity(Gravity.RIGHT, offsetY = 70) - .setImmersionStatusBar(true) - .setAnimator(object : DefaultAnimator() { - override fun enterAnim( - view: View, - params: WindowManager.LayoutParams, - windowManager: WindowManager, - sidePattern: SidePattern - ): Animator? = - super.enterAnim(view, params, windowManager, sidePattern) - ?.apply { - interpolator = OvershootInterpolator() - } - override fun exitAnim( - view: View, - params: WindowManager.LayoutParams, - windowManager: WindowManager, - sidePattern: SidePattern - ): Animator? = - super.exitAnim(view, params, windowManager, sidePattern) - ?.setDuration(200) - }) - .show() - } - } - true - } } private val timerTask = object : TimerTask() { diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/fragment_hmi.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/fragment_hmi.xml index b16e94637a..599d5fc18c 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/fragment_hmi.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/fragment_hmi.xml @@ -2,9 +2,18 @@ + + - - - - - - - - + + + + + + +