【问题标题】:Show videos in recyclerview with exoplayer android使用 exoplayer android 在 recyclerview 中显示视频
【发布时间】:2020-03-01 15:57:33
【问题描述】:

我想使用 exoPlayer android 在 recyclerView 中显示图像和视频列表(从服务器获取),而不是自动播放。只有当用户点击任何视频缩略图时,它才应该播放。

【问题讨论】:

标签: android-recyclerview video-streaming exoplayer2.x


【解决方案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);

【讨论】:

  • 我已经根据我的情况调整了您的解决方案,恭喜它运行良好!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-17
  • 2016-07-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多