【问题标题】:Hide play pause button of media controller in android在android中隐藏媒体控制器的播放暂停按钮
【发布时间】:2013-04-02 12:06:12
【问题描述】:

我的活动中有视频视图,也有 MediaController,但我想隐藏媒体控制器的播放暂停按钮。

这是我的代码:

MediaController mediaController =  new MediaController(this,false);
videoHolder.setMediaController(mediaController);
mediaController.setAnchorView(videoHolder);

请给我建议解决方案。

【问题讨论】:

  • 你试过visibility函数了吗?
  • 我应该在哪个组件上使用它?
  • 你的布局中有按钮,不是吗?
  • 我想隐藏媒体控制器的按钮
  • 想要搜索栏,但不希望媒体控制器提供任何其他内容

标签: android android-videoview


【解决方案1】:

我已经做到了。默认情况下,媒体控制器不公开任何隐藏播放/暂停控件的方法。因此,我们必须遍历 Media Controller 的子视图,获取所需的视图,然后对该视图做任何你想做的事情。

就我而言,我是按照以下方式进行的->

videoPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
        @Override
        public void onPrepared(MediaPlayer mediaPlayer) {
              LinearLayout viewGroupLevel1 = (LinearLayout)  media_Controller.getChildAt(0);
            LinearLayout viewGroupLevel2 = (LinearLayout) viewGroupLevel1.getChildAt(0);
            View view = viewGroupLevel2.getChildAt(2);
            view.setVisibility(View.GONE);
            videoPlayer.start();
        }
    }); `

为了解释我的代码,基本上媒体控制器是 FrameLayout 的子类,它在位置 0 有一个 LinearLayout 作为子视图组 (viewGroupLevel1),viewGroupLevel1 再次包含两个子视图组,从中获取视图组 (viewGroupLevel2) viewGroupLevel1 在位置 0。现在在 viewGroupLevel2 中获取位置 2 的视图,它实际上是一个图像按钮(播放/暂停按钮)。现在您可以轻松隐藏它。干杯!

【讨论】:

    【解决方案2】:

    你可以看到 http://www.phonesdevelopers.com/1765331/

        MediaController mc = new MediaController(this);  
        mc.setVisibility(View.INVISIBLE);  
        videoView.setMediaController(mc);  
    

    成功了

    【讨论】:

    • 它隐藏了所有MediaController 视图。
    • 它工作了,但会显示 MediaController 视图的细黑色边框线,所以这个解决方案对我不起作用。
    【解决方案3】:

    试试看(不确定)

    使用 OnPreparedListener 并在回调 onPrepared 中不正确地隐藏,例如:

    @Override
    public void onPrepared (MediaPlayer mp) 
    {
        int childs = mediaController.getChildCount();
        for (int i = 0; i < childs; i++)
        {
            View child = mediaController.getChildAt (i);
            child.setVisibility (View.GONE);
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2023-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多