我实现了一个嵌入了视频播放器的电子阅读器,我需要一个从播放器切换全屏模式的选项.
我的问题如下:
这是在全屏播放视频的最佳方式,让用户从此状态返回到之前正在阅读的页面,并保留视频的当前时间.
我需要处理的另一个复杂情况是:
在纵向和横向上有一个页面的不同可视化,如果用户在纵向上切换全屏并旋转设备,则视频应转到横向模式并重新缩放视频以适合屏幕,但如果用户从此页面返回,则应该再次回到肖像.
如果需要,我可以提供更多信息.
提前致谢
解决方法
我建议在布局中使用Activity with VideoView.
您可以像这样在方向更改上保存位置
@Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); if (mVideoView.isPlaying()) outState.putInt("pos",mVideoView.getCurrentPosition()); }
然后恢复位置并继续在onCreate方法中播放
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.video); mVideoView = (VideoView) findViewById(R.id.video); MediaController mediaController = new MediaController(this); mediaController.setAnchorView(mVideoView); mVideoView.setMediaController(mediaController); mVideoView.setOnCompletionListener(this); Intent intent = getIntent(); path = intent.getExtras().getString("path"); int pos = 0; if (savedInstanceState != null) { pos = savedInstanceState.getInt("pos"); } playVideoFromPos(pos); }