62 lines
1.8 KiB
Kotlin
62 lines
1.8 KiB
Kotlin
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()
|
|
}
|
|
|
|
} |