如何重新定位MediaController?

时间:2011-05-23 06:47:29

标签: android mediacontroller

我一直在为我的应用使用mediaController。

默认情况下,媒体控制器显示在屏幕底部。

有没有办法在屏幕中间显示媒体控制器?

3 个答案:

答案 0 :(得分:17)

仅在知道视频大小时才放置mediacontroller。因此,您必须这样做:

video.setOnPreparedListener(new OnPreparedListener() {
    @Override
    public void onPrepared(MediaPlayer mp) {
            mp.setOnVideoSizeChangedListener(new OnVideoSizeChangedListener() { 
                                    @Override
                                    public void onVideoSizeChanged(MediaPlayer mp, int width, int height) {
                                          /*
                                           *  add media controller
                                           */
                                          mc = new MediaController(YourActivity.this);;
                                          video.setMediaController(mc);
                                          /*
                                           * and set its position on screen
                                           */
                                          mc.setAnchorView(video);
                                    }
                                    });
                            }
          });

答案 1 :(得分:0)

最后我明白了..

   mediaController.setAnchorView(findViewById(R.id.main_audio_view));

使用此片段,我们可以根据布局ID或视图ID

将mediacontroller放置在特定位置。

答案 2 :(得分:-1)

/*var mediaController:MediaController? = 空

videoView 是对布局文件中 VideoView 的引用。 */

videoView.setOnPreparedListener(OnPreparedListener { mp ->
            mp.setOnVideoSizeChangedListener { mp, width, height -> 
                   
                 mediaController = MediaController(this@ActivityName)

                videoView.setMediaController(mediaController)
    
               mediaController?.setAnchorView(videoView)
 
            }
        })
`