我在我的应用中添加了exoplayer
我将整个应用程序的屏幕方向修改为纵向。
我需要将exoplayer旋转到横向模式。
我该如何处理这个问题?
我只需要旋转exo框架而不是整个片段或活动。
答案 0 :(得分:1)
您可以使用https://github.com/rongi/rotate-layout绘制旋转的ExoPlayer内容,但是要使该库正常工作,您必须在PlayerView中使用app:surface_type="texture_view"
答案 1 :(得分:0)
这可以通过简单的两行代码来完成,
当您单击任意按钮并想要旋转到横向视图时
((Activity) mContext).setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
并且想要旋转回肖像
((Activity) mContext).setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
答案 2 :(得分:0)
exoPlayerView.getVideoSurfaceView().setRotation(90);
答案 3 :(得分:-1)
您不需要额外的库,只需设置app:surface_type="texture_view"
然后您可以使用texture_view
在xml中旋转android:rotation="39"
或使用mainVideoView.rotation = 39f
在代码中旋转:
<com.google.android.exoplayer2.ui.SimpleExoPlayerView
android:id="@+id/mainVideoView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:focusable="true"
android:nextFocusLeft="@id/resizeLeft"
android:nextFocusRight="@id/resizeRight"
android:nextFocusUp="@+id/mediaContainer"
android:nextFocusDown="@+id/exo_pause"
app:surface_type="texture_view"
android:rotation="39"
app:controller_layout_id="@layout/custom_playback_control" />