Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何重新定位MediaController?_Android_Mediacontroller - Fatal编程技术网

Android 如何重新定位MediaController?

Android 如何重新定位MediaController?,android,mediacontroller,Android,Mediacontroller,我一直在为我的应用程序使用mediaController 默认情况下,媒体控制器显示在屏幕底部 有没有办法在屏幕中间显示媒体控制器? 我终于得到了… mediaController.setAnchorView(findViewById(R.id.main_audio_view)); 使用此代码段,我们可以根据布局id或视图id重新定位要放置在特定位置的mediacontroller。只有在视频大小已知的情况下,才可以放置mediacontroller。因此,您必须执行以下操作: vide

我一直在为我的应用程序使用mediaController

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

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

我终于得到了…
   mediaController.setAnchorView(findViewById(R.id.main_audio_view));

使用此代码段,我们可以根据布局id或视图id重新定位要放置在特定位置的mediacontroller。只有在视频大小已知的情况下,才可以放置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);
                                    }
                                    });
                            }
          });

/*var mediaController:mediaController?=空的

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


但即使这样,MediaController仍然会出现在屏幕底部。我认为这还取决于其他几个因素,比如您在XMLYeah中使用的布局。Bcoz我通常只使用相对布局,这可能是答案的副本,实际工作!无需在XML布局中添加MediaPlayer。只需在准备时设置AnchorView和VideoView即可。如果有人想要实现自己的媒体控制器,请签出
videoView.setOnPreparedListener(OnPreparedListener { mp ->
            mp.setOnVideoSizeChangedListener { mp, width, height -> 
                   
                 mediaController = MediaController(this@ActivityName)

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