How to re-position the MediaController?

2020-06-01 05:30发布

I have been using mediaController for my app.

By default, the Media Controller is displayed at the bottom of the screen.

Is there a way to display the Media Controller in the middle of the screen instead?

2条回答
叛逆
2楼-- · 2020-06-01 05:57

At last I got it..

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

Using this snippet we can re position the mediacontroller to be placed at a particular position based on the layout id or an view's id

查看更多
ゆ 、 Hurt°
3楼-- · 2020-06-01 06:11

Placing the mediacontroller only works if the video size is known. Thus you'll have to do:

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);
                                    }
                                    });
                            }
          });
查看更多
登录 后发表回答