diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/bottom/impl/MusicCheckView.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/bottom/impl/MusicCheckView.kt index 60fc3fd4f3..f663bcad95 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/bottom/impl/MusicCheckView.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/charter/passenger/ui/bottom/impl/MusicCheckView.kt @@ -15,6 +15,8 @@ import com.bumptech.glide.request.target.SimpleTarget import com.bumptech.glide.request.transition.Transition import com.mogo.och.charter.passenger.R import com.mogo.och.common.module.manager.auditionmanager.AuditionManager +import com.mogo.och.common.module.manager.auditionmanager.MusicData +import com.mogo.och.common.module.manager.auditionmanager.PlayState import kotlinx.android.synthetic.main.charter_p_bottom_music.view.aciv_center_image import kotlinx.android.synthetic.main.charter_p_bottom_music.view.actv_title import kotlinx.android.synthetic.main.charter_p_bottom_music.view.aciv_playing @@ -24,7 +26,7 @@ open class MusicCheckView @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 -) : ConstraintLayout(context, attrs, defStyleAttr) { +) : ConstraintLayout(context, attrs, defStyleAttr), AuditionManager.MusicDataChangeListener { companion object { private const val TAG = "StopSiteView" @@ -42,6 +44,7 @@ open class MusicCheckView @JvmOverloads constructor( init { LayoutInflater.from(context).inflate(R.layout.charter_p_bottom_music, this, true) + AuditionManager.addDataChangeListener(TAG,this) try { val typedArray = context.obtainStyledAttributes(attrs, R.styleable.CharterPBottomSelectView) backageViewId = typedArray.getResourceId(R.styleable.CharterPBottomSelectView_charterPBackageViewId, -1) @@ -145,4 +148,20 @@ open class MusicCheckView @JvmOverloads constructor( backageView?.visibility = View.VISIBLE } } + + override fun updateState(oldData: MusicData?, musicData: MusicData) { + if(musicData.state== PlayState.Playing){ + Glide.with(context) + .load(musicData.coverHeadImageUrl) + .apply(RequestOptions().placeholder(R.drawable.charter_p_music_bg_relax_head)) + .into(object : SimpleTarget() { + override fun onResourceReady( + resource: Drawable, + transition: Transition? + ) { + aciv_playing.background = resource + } + }) + } + } } \ No newline at end of file diff --git a/OCH/taxi/pcommon/src/main/java/com/mogo/och/taxi/passenger/ui/rightbar/RightBarView.kt b/OCH/taxi/pcommon/src/main/java/com/mogo/och/taxi/passenger/ui/rightbar/RightBarView.kt index d09ad023fc..b3ee635246 100644 --- a/OCH/taxi/pcommon/src/main/java/com/mogo/och/taxi/passenger/ui/rightbar/RightBarView.kt +++ b/OCH/taxi/pcommon/src/main/java/com/mogo/och/taxi/passenger/ui/rightbar/RightBarView.kt @@ -16,6 +16,8 @@ import com.bumptech.glide.request.transition.Transition import com.mogo.eagle.core.utilcode.kotlin.onClick import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.och.common.module.manager.auditionmanager.AuditionManager +import com.mogo.och.common.module.manager.auditionmanager.MusicData +import com.mogo.och.common.module.manager.auditionmanager.PlayState import com.mogo.och.taxi.passenger.common.R import kotlinx.android.synthetic.main.taxi_p_rightbar.view.ck_music import kotlinx.android.synthetic.main.taxi_p_rightbar.view.ck_setting @@ -25,7 +27,7 @@ import kotlinx.android.synthetic.main.taxi_p_rightbar.view.con_third_group import kotlinx.android.synthetic.main.taxi_p_rightbar.view.iv_center_location -class RightBarView : ConstraintLayout { +class RightBarView : ConstraintLayout, AuditionManager.MusicDataChangeListener { private val TAG = "RightBarView" @@ -40,6 +42,10 @@ class RightBarView : ConstraintLayout { private var rightBarCallback:RightBarCallback?=null private var animator:ObjectAnimator?=null + init { + AuditionManager.addDataChangeListener(TAG,this) + } + private fun initView() { LayoutInflater.from(context).inflate(R.layout.taxi_p_rightbar, this, true) @@ -157,5 +163,20 @@ class RightBarView : ConstraintLayout { fun setGo2CenterClick() } + override fun updateState(oldData: MusicData?, musicData: MusicData) { + if(musicData.state==PlayState.Playing){ + Glide.with(context) + .load(musicData.coverHeadImageUrl) + .apply(RequestOptions().placeholder(R.drawable.taxt_p_music_bg_relax_head)) + .into(object : SimpleTarget() { + override fun onResourceReady( + resource: Drawable, + transition: Transition? + ) { + ck_music.background = resource + } + }) + } + } } \ No newline at end of file