使用 exoplayer android 在 recyclerview 中显示视频
Posted
技术标签:
【中文标题】使用 exoplayer android 在 recyclerview 中显示视频【英文标题】:Show videos in recyclerview with exoplayer android 【发布时间】:2020-03-01 15:57:33 【问题描述】:我想使用 exoPlayer android 在 recyclerView 中显示图像和视频列表(从服务器获取),而不是自动播放。只有当用户点击任何视频缩略图时,它才应该播放。
【问题讨论】:
I want to display data from Json in recyclerview in Android的可能重复 【参考方案1】:要在回收站视图中显示图像和视频,您需要在适配器中创建 2 个不同的视图持有者,并使用以下代码获取图像和视频的视图类型:-
@Override
public int getItemViewType(int position)
if (data.get(0).isVideo)
return Constants.LAYOUT_VIDEO;
else
return Constants.LAYOUT_IMAGE;
以下是 onCreateViewHolder 的代码:-
@NonNull
@Override
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType)
View view;
if (viewType == Constants.LAYOUT_VIDEO)
view = LayoutInflater.from(parent.getContext()).inflate(R.layout.layout_video, parent, false);
return new VideoViewHolder(view);
else if (viewType == Constants.LAYOUT_IMAGE)
view = LayoutInflater.from(parent.getContext()).inflate(R.layout.layout_image, parent, false);
return new ImageViewHolder(view);
有关在回收站视图中显示视频的更多信息,您可以访问以下链接:-
https://androidwave.com/exoplayer-in-recyclerview-in-android/
要禁用自动播放,只需在将 URL 设置为 exoplayer 之前写下一行:-
player.setPlayWhenReady(true);
【讨论】:
我已经根据我的情况调整了您的解决方案,恭喜它运行良好!以上是关于使用 exoplayer android 在 recyclerview 中显示视频的主要内容,如果未能解决你的问题,请参考以下文章
Android Widevine DASH 实现 + ExoPlayer
如何在 android 中实现 Exoplayer 2.11.1?
使用 exoplayer android 在 recyclerview 中显示视频
使用 Kotlin 的 Android TV 中的 ExoPlayer