From c8c0a1a0c4f820f15c470ec53a709c2d06492d52 Mon Sep 17 00:00:00 2001 From: yangyakun Date: Mon, 21 Aug 2023 19:26:59 +0800 Subject: [PATCH] =?UTF-8?q?[5.0.0]=20[=E5=B8=A7=E5=8A=A8=E7=94=BB=E6=8A=BD?= =?UTF-8?q?=E5=8F=96]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/mogo/och/bus/passenger/ui/MainFragment.kt | 10 +++++++++- .../bus/passenger/ui/lockview/LockAndUnlockView.kt | 8 ++++---- .../src/main/res/layout/m1_devices_lock_unlock.xml | 1 + .../common/module/utils/FrameAnimatorContainer.kt} | 12 +++++++----- 4 files changed, 21 insertions(+), 10 deletions(-) rename OCH/{charter/passenger/src/main/java/com/mogo/och/bus/passenger/utils/animutils/AnimationsContainer.kt => mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/FrameAnimatorContainer.kt} (93%) diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt index d8ea7e1723..208461620f 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt @@ -15,6 +15,8 @@ import com.mogo.eagle.core.function.view.SiteMarkerBean import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P import com.mogo.eagle.core.utilcode.util.UiThreadHandler +import com.mogo.map.listener.IMogoMapListener +import com.mogo.map.listener.MogoMapListenerHandler import com.mogo.map.uicontroller.VisualAngleMode import com.mogo.och.bus.passenger.R import com.mogo.och.bus.passenger.bean.event.EventLineSites @@ -37,7 +39,7 @@ import java.lang.ref.WeakReference * @author: wangmingjun * @date: 2022/4/12 */ -class MainFragment : MvpFragment() { +class MainFragment : MvpFragment(), IMogoMapListener { private var bpFunctionGroupDialogFragment: WeakReference? = null private var m1CarUserNoOrderFragment: WeakReference? = null @@ -139,6 +141,7 @@ class MainFragment : MvpFragment() { mapBizView.getUI().changeMapVisualAngle(VisualAngleMode.MODE_MEDIUM_SIGHT, null) mapBizView.getUI().changeZoom2(0.8f) } + MogoMapListenerHandler.mogoMapListenerHandler.registerHostMapListener(TAG, this) } fun setCarMode(type: Int) { @@ -240,6 +243,11 @@ class MainFragment : MvpFragment() { EventBus.getDefault().unregister(this) } + override fun onMapLoaded() { + super.onMapLoaded() + getMapUIController()?.setAllGesturesEnabled(false) + } + fun showOpenAndCloseDoor() { val bpFunctionGroup = bpFunctionGroupDialogFragment?.get() bpFunctionGroup?.dismissAllowingStateLoss() diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/ui/lockview/LockAndUnlockView.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/ui/lockview/LockAndUnlockView.kt index 3a7d6b7612..dd259ae25e 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/ui/lockview/LockAndUnlockView.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/ui/lockview/LockAndUnlockView.kt @@ -11,7 +11,7 @@ import android.view.View import androidx.constraintlayout.widget.ConstraintLayout import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.och.bus.passenger.R -import com.mogo.och.taxi.passenger.widget.animutils.AnimationsContainer +import com.mogo.och.common.module.utils.FrameAnimatorContainer import kotlinx.android.synthetic.main.m1_devices_lock_unlock.view.aciv_screen_lock import kotlinx.android.synthetic.main.m1_devices_lock_unlock.view.aciv_screen_lock_bg import kotlinx.android.synthetic.main.m1_devices_lock_unlock.view.aciv_screen_unlock_ani @@ -30,7 +30,7 @@ class LockAndUnlockView : ConstraintLayout, LockManager.LockStatusCallback { val TAG = "UnLockView" - private var animations: AnimationsContainer? = null + private var animations: FrameAnimatorContainer? = null private var downType: DownType = DownType.NONE private var handler: Handler?=null @@ -55,9 +55,9 @@ class LockAndUnlockView : ConstraintLayout, LockManager.LockStatusCallback { super.onAttachedToWindow() LockManager.setAutoStatusCallback(TAG, this) aciv_screen_unlock_ani?.let { - animations = AnimationsContainer(R.array.openlock, 24, it) + animations = FrameAnimatorContainer(R.array.openlock, 24, it,initFirstFrame = false) animations!!.setOnAnimStopListener(object : - AnimationsContainer.OnAnimationStoppedListener { + FrameAnimatorContainer.OnAnimationStoppedListener { override fun AnimationStopped() { it.setImageDrawable(null) } diff --git a/OCH/charter/passenger/src/main/res/layout/m1_devices_lock_unlock.xml b/OCH/charter/passenger/src/main/res/layout/m1_devices_lock_unlock.xml index e93bed67c9..6fcb95f3fe 100644 --- a/OCH/charter/passenger/src/main/res/layout/m1_devices_lock_unlock.xml +++ b/OCH/charter/passenger/src/main/res/layout/m1_devices_lock_unlock.xml @@ -32,6 +32,7 @@ android:id="@+id/aciv_screen_unlock_ani" android:layout_width="@dimen/dp_90" android:layout_height="@dimen/dp_90" + android:src="@drawable/open_lock_000" app:layout_constraintTop_toTopOf="@+id/aciv_screen_lock_bg" app:layout_constraintBottom_toBottomOf="@+id/aciv_screen_lock_bg" app:layout_constraintStart_toStartOf="@+id/aciv_screen_lock_bg" diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/utils/animutils/AnimationsContainer.kt b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/FrameAnimatorContainer.kt similarity index 93% rename from OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/utils/animutils/AnimationsContainer.kt rename to OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/FrameAnimatorContainer.kt index f6144be7fd..e60bb084d5 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/utils/animutils/AnimationsContainer.kt +++ b/OCH/mogo-och-common-module/src/main/java/com/mogo/och/common/module/utils/FrameAnimatorContainer.kt @@ -1,4 +1,4 @@ -package com.mogo.och.taxi.passenger.widget.animutils +package com.mogo.och.common.module.utils import android.graphics.Bitmap import android.graphics.BitmapFactory @@ -9,7 +9,7 @@ import android.widget.ImageView import com.mogo.commons.AbsMogoApplication import java.lang.ref.SoftReference -class AnimationsContainer(resId: Int, fps: Int, imageView: ImageView) { +class FrameAnimatorContainer (resId: Int, fps: Int, imageView: ImageView,initFirstFrame:Boolean = true){ private lateinit var mFrames: IntArray // 帧数组 private var mIndex = 0 // 当前帧 private var mShouldRun = false // 开始/停止播放用 @@ -22,10 +22,10 @@ class AnimationsContainer(resId: Int, fps: Int, imageView: ImageView) { private var mBitmapOptions: BitmapFactory.Options? = null //Bitmap管理类,可有效减少Bitmap的OOM问题 init { - createAnimation(imageView, getData(resId), fps) + createAnimation(imageView, getData(resId), fps,initFirstFrame) } - private fun createAnimation(imageView: ImageView, frames: IntArray, fps: Int) { + private fun createAnimation(imageView: ImageView, frames: IntArray, fps: Int, initFirstFrame:Boolean) { mHandler = Handler(Looper.myLooper()!!) mFrames = frames mIndex = -1 @@ -33,7 +33,9 @@ class AnimationsContainer(resId: Int, fps: Int, imageView: ImageView) { mShouldRun = false mIsRunning = false mDelayMillis = 1000 / fps //帧动画时间间隔,毫秒 - imageView.setImageResource(mFrames[0]) + if(initFirstFrame) { + imageView.setImageResource(mFrames[0]) + } // 当图片大小类型相同时进行复用,避免频繁GC val bmp = (imageView.drawable as BitmapDrawable).bitmap