视频组件更换StandardGSYVideoPlayer

This commit is contained in:
2026-06-04 17:51:19 +08:00
parent 60ecdf140b
commit 88c791a520
6 changed files with 228 additions and 510 deletions

View File

@@ -0,0 +1,62 @@
package com.example.defenseapplication.view
import android.content.Context
import android.util.AttributeSet
import android.util.Log
import com.shuyu.gsyvideoplayer.video.StandardGSYVideoPlayer
class MyGSYVideoPlayer @JvmOverloads constructor(
context: Context, attrs: AttributeSet? = null
) : StandardGSYVideoPlayer(context, attrs) {
/** 控制栏显示/隐藏监听 */
var onControlVisibilityChanged: ((Boolean) -> Unit)? = null
// 播放中显示控制栏
override fun changeUiToPlayingShow() {
super.changeUiToPlayingShow()
Log.e("GSY_TEST", "通知显示按钮")
onControlVisibilityChanged?.invoke(true)
}
// 暂停中显示控制栏
override fun changeUiToPauseShow() {
super.changeUiToPauseShow()
onControlVisibilityChanged?.invoke(true)
}
// 播放中清除控制栏
override fun changeUiToPlayingClear() {
super.changeUiToPlayingClear()
Log.e("GSY_TEST", "changeUiToPlayingClear")
onControlVisibilityChanged?.invoke(false)
}
// 暂停中清除控制栏
override fun changeUiToPauseClear() {
super.changeUiToPauseClear()
onControlVisibilityChanged?.invoke(false)
}
// 完成播放
override fun changeUiToCompleteClear() {
super.changeUiToCompleteClear()
onControlVisibilityChanged?.invoke(false)
}
override fun hideAllWidget() {
Log.e("GSY_TEST", "通知隐藏按钮")
super.hideAllWidget()
onControlVisibilityChanged?.invoke(false)
}
override fun changeUiToNormal() {
Log.e("GSY_TEST", "changeUiToNormal")
super.changeUiToNormal()
}
override fun changeUiToPreparingShow() {
Log.e("GSY_TEST", "changeUiToPreparingShow")
super.changeUiToPreparingShow()
}
}