【问题标题】:How to hide the controls in the VideoView in Android?如何在 Android 的 VideoView 中隐藏控件?
【发布时间】:2012-03-28 13:26:34
【问题描述】:

我正在使用 VideoView 在我的应用中播放视频,但我想隐藏其中的控件。我怎样才能做到这一点? 谢谢。

【问题讨论】:

  • 使用 framelayout 并放置 videoview 和其他您想要隐藏/显示的控件。 (例如,视频视图中间的播放暂停按钮,在视频播放或暂停状态时隐藏/显示)。

标签: android hide android-videoview


【解决方案1】:

对于VideoView中的Controls,我们可以将MediaController设置为null

videoView.setMediaController(null)

【讨论】:

  • 它可以工作,但在某些设备上你会得到空点异常: 原因:java.lang.NullPointerException at android.widget.VideoView.setMediaController(VideoView.java:270)
  • 但如果只隐藏前进按钮?
  • 后面的答案比这里接受的答案效果更好。在不可见的控制器中设置比设置为 null 更可预测。
【解决方案2】:

试试这个:

MediaController ctrl = new MediaController(context);
ctrl.setVisibility(View.GONE);
videoView.setMediaController(ctrl);

【讨论】:

  • 由于我使用 MediaPlayer.OnPreparedListener 来控制我的 videoview 的音量,我没有设置 .setMediaController(null) 的奢侈,而是这个灵魂完美地工作。谢谢!
  • 这很奇怪。如果 ctrl.setVisible(View.VISIBLE) 在 .GON​​E 之后不显示
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-18
  • 2021-11-08
相关资源
最近更新 更多