我一直在为我的应用程序使用 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);
}
});
}
});
我终于明白了。。
mediaController.setAnchorView(findViewById(R.id.main_audio_view));
使用此代码段,我们可以根据布局 id 或视图的 id 重新定位媒体控制器以放置在特定位置
/*var 媒体控制器:媒体控制器?=空
videoView 是对布局文件中的 VideoView 的引用。*/
videoView.setOnPreparedListener(OnPreparedListener { mp ->
mp.setOnVideoSizeChangedListener { mp, width, height ->
mediaController = MediaController(this@ActivityName)
videoView.setMediaController(mediaController)
mediaController?.setAnchorView(videoView)
}
})
`