如何重新定位 MediaController?

发布于 2024-11-09 02:26:27 字数 93 浏览 9 评论 0原文

我一直在我的应用程序中使用 mediaController 。

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

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

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?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

じ违心 2024-11-16 02:26:27

仅当视频大小已知时,放置媒体控制器才有效。因此你必须这样做:

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);
                                    }
                                    });
                            }
          });

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);
                                    }
                                    });
                            }
          });
夏了南城 2024-11-16 02:26:27

最后我明白了..

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

使用这个片段,我们可以根据布局 id 或视图 id 重新定位媒体控制器以放置在特定位置

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

总攻大人 2024-11-16 02:26:27

/*var 媒体控制器:媒体控制器? = null

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

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

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

/*var mediaController:MediaController? = null

videoView is reference to VideoView in layout file.
*/

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

                videoView.setMediaController(mediaController)
    
               mediaController?.setAnchorView(videoView)
 
            }
        })
`
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文