如何隐藏ExoPlayer2中的所有控制器(开始按钮,暂停等)它们不存在,并且屏幕始终已满。
我看,有simpleExoPlayerView.setUseController(true)
方法;
但它会停用播放器......
public void setUseController (boolean useController) {
this.useController = useController;
if (useController) {
controller.setPlayer(player);
} else {
controller.hide();
controller.setPlayer(null);
}
}
如何隐藏或删除这些组件?
答案 0 :(得分:39)
使用ExoPlayer-r2.2.0
videoView.hideController();
videoView.setControllerVisibilityListener(new PlaybackControlView.VisibilityListener() {
@Override
public void onVisibilityChange(int i) {
if(i == 0) {
videoView.hideController();
}
}
});
或
app:布局
中的use_controller =“false”<...
xmlns:app="http://schemas.android.com/apk/res-auto"
...>
<com.google.android.exoplayer2.ui.SimpleExoPlayerView
android:layout_width="match_parent"
android:layout_height="match_parent"
app:use_controller="false"/>
答案 1 :(得分:7)
只需使用此
即可exoPlayerView.setUseController(false);
答案 2 :(得分:3)
exoPlayerView.setUseController(false);
答案 3 :(得分:2)
为解决这个问题,我这样做了:
Kotlin的代码
simpleExoPlayerView.setControllerVisibilityListener { visibility ->
val layout = activity.findViewById<LinearLayout>(R.id.ll_customPlayBackControlView)
if (layout.tag != "IN_ANIMATION") {
when (visibility) {
View.GONE -> {
layout.tag = "IN_ANIMATION"
ex_fragmentVideoView.showController()
layout.animate().alpha(0F).setDuration(450L).withEndAction({ ex_fragmentVideoView.hideController(); layout.tag = "" }).start()
}
View.VISIBLE -> {
layout.animate().alpha(1F).setDuration(450L).start()
}
}
}
}
答案 4 :(得分:1)
controller.setVisibility(View.GONE);
controller.setVisibility(View.INVISIBLE);
使用其中任何一个来设置可见性。 Android文档:Link
答案 5 :(得分:1)
科特琳:
exoPlayerView.useController = false
Java:
exoPlayerView.setUseController(false);
答案 6 :(得分:1)
就我而言,我只想显示控制器并隐藏视频屏幕。我使用了PlaybackControlView。
<com.google.android.exoplayer2.ui.PlaybackControlView
android:id="@+id/player_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/quantum_yellow"/>
答案 7 :(得分:0)
PlayerView具有hideController方法。 您可以这样称呼它:
mPlayerView.hideController();
答案 8 :(得分:0)
exoPlayerView.useController = false