我正在将 Exoplayer 与 Media 3 库一起使用。我无法像我们在旧视图系统中那样在 Exoplayer 中添加自定义句柄。
我期望在新的jetpack compose中添加与旧视图系统相同的控制器的自定义UI。到目前为止,我可以使用默认的 UI 控制器播放视频,但无法进行自定义。请帮助我如何在 Exoplayer 中添加可自定义视图?
您可以将自定义 ui 添加到 androidx.media3 库。首先为您的自定义控件创建一个布局player_controls.xml,如下所示
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageButton android:id="@id/exo_play_pause"
android:layout_gravity="center"
android:background="@drawable/your_custom_shape"
style="@style/ExoStyledControls.Button.Center.PlayPause"/>
//Add more controls you need and design them according to your needs
</FrameLayout>
然后在您的主 xml 和玩家视图中添加自定义控件布局,如下所示
<androidx.media3.ui.PlayerView
android:id="@+id/video_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
ads:controller_layout_id="@layout/player_controls"/>