我想使用exoPlayer android在recyclerView中显示图像和视频列表(从服务器获取),而不是自动播放。仅当用户单击任何视频缩略图时,它才可以播放。
sibi333 回答:使用exoplayer android在recyclerview中显示视频
要在回收器视图中显示图像和视频,您需要在适配器中创建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,false);
return new ImageViewHolder(view);
}
}
有关在“回收者”视图中显示视频的详细信息,您可以访问以下链接:-
https://androidwave.com/exoplayer-in-recyclerview-in-android/
要禁用自动播放,只需在将URL设置为exoplayer之前写以下行:-
player.setPlayWhenReady(true);