gpt4 book ai didi

android - 如何在Android中制作圆形Exoplayer PlayerView

转载 作者:行者123 更新时间:2023-12-02 10:49:22 42 4
gpt4 key购买 nike

您好,我正在尝试创建一个圆形视频播放器,并且我正在使用 Exoplaye2 库。我将 PLayerView 放入圆形 FrameLayout 中,但不知道如何使 PlayerView 本身变圆。我已经尝试过this但它不起作用,我什至创建了一个 rounded_shape_drawable 并将其添加到 Playeview 的背景中,但它不起作用(基本上,为 PlayeView 设置背景根本不起作用)。

下面是我的简单布局文件:

<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="25dp"
android:layout_weight="4"
android:gravity="center"
android:orientation="horizontal"
android:weightSum="1">

<FrameLayout
android:id="@+id/player_view_layout"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.6"
android:padding="10dp"
android:background="@drawable/rounded_video_layout">

<com.google.android.exoplayer2.ui.PlayerView

android:id="@+id/exoplayer_player_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:fastforward_increment="@integer/exoplayer_playback_fastforward_increment_ms"
app:resize_mode="fill"
app:rewind_increment="@integer/exoplayer_playback_rewind_increment_ms"
app:show_timeout="@integer/exoplayer_show_control_timeout_ms"
app:use_artwork="true"
app:use_controller="false">

</com.google.android.exoplayer2.ui.PlayerView>

</FrameLayout>

</LinearLayout>

下面是我当前的输出:

enter image description here

任何帮助将不胜感激

最佳答案

经过长时间的搜索,我无法仅在 xml 中为 PlayerView 或 ImageView 制作圆角(我认为这是不可能的)。所以我决定用java来做。下面是代码:

playerView.setOutlineProvider(new ViewOutlineProvider() {
@Override
public void getOutline(View view, Outline outline) {
outline.setRoundRect(0, 0, view.getWidth(), view.getHeight(), 15);
}
});

playerView.setClipToOutline(true);

关于android - 如何在Android中制作圆形Exoplayer PlayerView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54355108/

42 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com