From c22831be27de0d37134ddd3111707c5fa16ffb11 Mon Sep 17 00:00:00 2001 From: yangyakun Date: Thu, 8 May 2025 15:49:38 +0800 Subject: [PATCH] =?UTF-8?q?[8.0.0]=20[fea]=20[=E8=A7=86=E9=A2=91=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E5=B9=BF=E5=91=8A]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../passenger/ui/video/InfoVideoView.kt | 30 ++++++++++++++++--- .../passenger/widget/ConsultVideoPlayer.kt | 6 ++-- .../res/layout/taxt_u_p_mogo_video_layout.xml | 10 +++++++ 3 files changed, 38 insertions(+), 8 deletions(-) diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/ui/video/InfoVideoView.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/ui/video/InfoVideoView.kt index f2ba3471ae..64532dcaab 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/ui/video/InfoVideoView.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/ui/video/InfoVideoView.kt @@ -1,12 +1,17 @@ package com.mogo.och.unmanned.passenger.ui.video import android.content.Context +import android.graphics.drawable.Drawable import android.util.AttributeSet import android.view.LayoutInflater import android.view.View import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.view.isVisible import androidx.recyclerview.widget.RecyclerView +import com.bumptech.glide.Glide +import com.bumptech.glide.load.resource.bitmap.CenterCrop +import com.bumptech.glide.load.resource.bitmap.RoundedCorners +import com.bumptech.glide.request.RequestOptions import com.mogo.eagle.core.function.main.MainMoGoApplication import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.util.GsonUtils @@ -21,13 +26,13 @@ import com.mogo.och.common.module.wigets.media.MediaItem import com.mogo.och.common.module.wigets.media.MediaPlayLogger import com.mogo.och.unmanned.passenger.bean.TaxiPassengerVideoPlay import com.mogo.och.unmanned.passenger.ui.video.RecyclerVideoAdapterNew.OnThumbImageClilckListener -import com.mogo.och.unmanned.passenger.ui.video.layoutmanage.CarouselLayoutManager import com.mogo.och.unmanned.passenger.widget.ConsultVideoPlayer import com.mogo.och.unmanned.taxi.passenger.R +import com.mogo.skin.utils.SkinResources import com.shuyu.gsyvideoplayer.GSYVideoManager import com.shuyu.gsyvideoplayer.listener.GSYSampleCallBack -import com.shuyu.gsyvideoplayer.listener.VideoAllCallBack import com.shuyu.gsyvideoplayer.video.base.GSYVideoView +import kotlinx.android.synthetic.main.taxt_u_p_mogo_video_layout.view.image_item_player import kotlinx.android.synthetic.main.taxt_u_p_mogo_video_layout.view.infoVideoPlaylist import kotlinx.android.synthetic.main.taxt_u_p_mogo_video_layout.view.tv_playing_title import kotlinx.android.synthetic.main.taxt_u_p_mogo_video_layout.view.video_item_player @@ -59,6 +64,9 @@ internal class InfoVideoView @JvmOverloads constructor( private var currentMediaIndex = 0 + var placeholderDrawable: Drawable = SkinResources.getInstance().getDrawable(R.drawable.taxi_p_road_video_bg) + + init { LayoutInflater.from(context).inflate(R.layout.taxt_u_p_mogo_video_layout, this, true) initView() @@ -127,7 +135,6 @@ internal class InfoVideoView @JvmOverloads constructor( private fun updateMediaListDataAndView(newList: MutableList) { mediaList.clear() mediaList.addAll(newList) - mediaList.addAll(newList) UiThreadHandler.post { updateData() infoVideoPlaylist.adapter?.notifyDataSetChanged() @@ -197,7 +204,22 @@ internal class InfoVideoView @JvmOverloads constructor( if (mediaList.isNotEmpty() && currentMediaIndex < mediaList.size) { currentMedia = mediaList[currentMediaIndex] tv_playing_title.text = currentMedia?.title - video_item_player.setData(currentMedia!!) + currentMedia?.let { + if(it.type==MediaItem.MEDIA_TYPE_IMAGE) { + video_item_player.onVideoReset() + video_item_player.visibility = View.GONE + image_item_player.visibility = View.VISIBLE + Glide.with(context) + .load(it.url) + .apply(RequestOptions() + .transform(CenterCrop(),RoundedCorners(12)).placeholder(placeholderDrawable)) + .into(image_item_player) + }else{ + video_item_player.visibility = View.VISIBLE + image_item_player.visibility = View.GONE + video_item_player.setData(currentMedia!!) + } + } } } diff --git a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/widget/ConsultVideoPlayer.kt b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/widget/ConsultVideoPlayer.kt index 108548fbc3..4d57a9e12d 100644 --- a/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/widget/ConsultVideoPlayer.kt +++ b/OCH/taxi/unmanned-passenger/src/main/java/com/mogo/och/unmanned/passenger/widget/ConsultVideoPlayer.kt @@ -568,10 +568,11 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer { } fun setData(currentMedia: TaxiPassengerVideoPlay) { + + setFileType(currentMedia.type) if(gsyVideoOptionBuilder==null){ gsyVideoOptionBuilder = GSYVideoOptionBuilder() } - gsyVideoOptionBuilder ?.setEnlargeImageRes(R.drawable.taxt_u_p_change_full) ?.setUrl(currentMedia.url) @@ -580,9 +581,6 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer { ?.setThumbPlay(false) ?.setStartAfterPrepared(currentMedia.type == MediaItem.MEDIA_TYPE_VIDEO) ?.build(this) - setFileType(currentMedia.type) - - coverImage Glide.with(context) .load(currentMedia.imageUrl) diff --git a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_mogo_video_layout.xml b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_mogo_video_layout.xml index abb5c60b80..3f0dd4111d 100644 --- a/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_mogo_video_layout.xml +++ b/OCH/taxi/unmanned-passenger/src/main/res/layout/taxt_u_p_mogo_video_layout.xml @@ -31,6 +31,16 @@ android:layout_width="@dimen/dp_1920" android:layout_height="1080dp" /> + +