我正在使用 exoplayer 在我的 android 应用程序中播放来自 url 的视频。在肖像中,一切都按预期工作(在活动中使用 viewpager、片段和选项卡)。我的目标是在用户横向时全屏播放视频。这意味着只有视频会横向播放,所有其他细节都会消失并在纵向时返回到原始布局。请问我怎样才能做到这一点?或者实现这一目标的最佳方法是什么?任何示例代码将不胜感激。
原文由 Jean-Pascal MEWENEMESSE 发布,翻译遵循 CC BY-SA 4.0 许可协议
我正在使用 exoplayer 在我的 android 应用程序中播放来自 url 的视频。在肖像中,一切都按预期工作(在活动中使用 viewpager、片段和选项卡)。我的目标是在用户横向时全屏播放视频。这意味着只有视频会横向播放,所有其他细节都会消失并在纵向时返回到原始布局。请问我怎样才能做到这一点?或者实现这一目标的最佳方法是什么?任何示例代码将不胜感激。
原文由 Jean-Pascal MEWENEMESSE 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答939 阅读✓ 已解决
1 回答2.3k 阅读
1 回答1.8k 阅读
1 回答1.1k 阅读
1 回答991 阅读
2 回答694 阅读
1 回答863 阅读
我是菜鸟,所以这是我能提供的最好的帮助,顺便说一句,我在 Exoplayer 演示应用程序中对此进行了测试,我将 exoplayer 高度更改为 600px 并应用了这段代码,它运行良好。
添加此代码以检测屏幕方向
顺便说一句,以防万一您使用的不是 FrameLayout 而是 RelativeLayout
我忘记了您需要隐藏操作或标题栏,希望这段代码有所帮助,将这些代码添加到上面的代码中,而且我认为您需要将活动扩展到 AppCompatActivity 才能使 getSupportActionBar 代码正常工作。
这也可能有助于将整个项目设置为全屏,隐藏状态栏等,必须根据屏幕方向在 onConfigurationChanged 中添加。
在景观中
在 PORTRAIT 模式下退出全屏
我编辑了代码,添加了 View.SYSTEM_UI_FLAG_IMMERSIVE 以防止在用户单击视频中的控制按钮时显示状态栏。