java - 无法从服务器获取 RecylerView 中的视频
问题描述
`实际上我想在我创建的 RecylerView 中显示来自服务器的视频列表,它包含 TextView(比如是否是 Facebook、youtube 视频)和一个 VideoView(用于显示视频),我在里面写了一些代码VideoAdapter 类中的 bindobject() 方法。
编写代码后,我得到了 TextView 字段但没有视频,任何帮助将不胜感激???
这是代码:`
package com.fitness.client.ui.main.fragments.gallery.adapter;
import android.net.Uri;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.MediaController;
import androidx.annotation.NonNull;
import com.fitness.client.R;
import com.fitness.client.api.user.GalleryResponse;
import com.fitness.client.base.classes.BaseRecyclerViewAdapter;
import com.fitness.client.base.classes.BaseViewHolder;
import com.fitness.client.databinding.ItemProfileVideoBinding;
import java.util.List;
public class VideoAdapter extends BaseRecyclerViewAdapter<VideoAdapter.VideoHolder, GalleryResponse.Video_galleryEntity> {
public VideoAdapter(List<GalleryResponse.Video_galleryEntity> data) {
super(data);
}
@NonNull
@Override
public VideoHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
return new VideoHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_profile_video, parent, false));
}
class VideoHolder extends BaseViewHolder<GalleryResponse.Video_galleryEntity, ItemProfileVideoBinding> {
public VideoHolder(View itemView) {
super(itemView);
}
@Override
protected void bindObject(GalleryResponse.Video_galleryEntity object) {
getViewDataBinding().videoText.setText(object.getVideo_type());
//Getting video
String video_url = object.getVideo();
Log.e("MyFragment", "Video-url: " + video_url );
Uri uri = Uri.parse(video_url);
getViewDataBinding().video.setVideoURI(uri);
getViewDataBinding().video.start();
}
}
}```
解决方案
如果您使用 VideoView 效率将不高 因为视频需要流式传输 我建议您使用 EXO 播放器它是由 google 创建的,它处理所有的流式传输部分,您也可以阅读那里的文档
推荐阅读
- android - 不能将模型实体用于房间。尝试了以下构造函数,但它们未能匹配
- javascript - 随机问题顺序
- graphql - GraphQL,Apollo 服务器联合模式
- php - 如何将新列数据保存到 laravel 数据透视表中?
- mysql - 如何确保多对多关系具有相同的外键
- c++ - 将 Win32 对话框中的图标设置为默认图标
- node.js - Nodejs无法为Angular项目编译
- javascript - react-native-hms-maps 地图为空白
- r - 执行功能时出现子集问题
- python - 将 Pymunk 与 matplotlib.animation.FuncAnimation() 一起使用