Linjiajia
2023-08-27 1df231fd6aafa221aef3532d069c7e27d4331be7
app/src/main/java/com/application/zhangshi_app_android/ui/function/VideoFragment.java
@@ -11,6 +11,7 @@
import com.android.app_base.base.view.BaseFragment;
import com.android.app_base.utils.GlideUtil;
import com.application.zhangshi_app_android.R;
import com.application.zhangshi_app_android.bean.BannerBean;
import com.application.zhangshi_app_android.databinding.FragmentVideoBinding;
import com.shuyu.gsyvideoplayer.GSYVideoManager;
import com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder;
@@ -29,11 +30,11 @@
 */
public class VideoFragment extends BaseFragment<FragmentVideoBinding, VideoFragmentViewModel> {
    OrientationUtils orientationUtils;
    private List<String> videoList;
    private List<BannerBean> videoList;
    private boolean isPlay;
    private boolean isPause;
    private VideoFragment() {
    public VideoFragment() {
    }
    public static VideoFragment newInstance() {
@@ -58,28 +59,36 @@
    @Override
    protected void initParam() {
        if (getArguments() != null) {
            videoList = (List<String>) getArguments().getSerializable("videoList");
            videoList = (List<BannerBean>) getArguments().getSerializable("videoList");
        }
    }
    @Override
    protected void initView() {
        if (videoList != null && videoList.size() > 0){
        String playUrl = null;
        for (BannerBean bannerBean : videoList) {
            if (bannerBean.getChoose() == 1){
                playUrl = bannerBean.getUrl();
                break;
            }
        }
        if (playUrl != null){
            binding.videoPlayer.setVisibility(View.VISIBLE);
            binding.layoutDataNull.setVisibility(View.GONE);
            //增加封面
            ImageView imageView = new ImageView(getSelfActivity());
            imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
            GlideUtil.loadVideoCover(videoList.get(0), imageView,-1,1);
            //增加title
            binding.videoPlayer.getTitleTextView().setVisibility(View.GONE);
            binding.videoPlayer.getBackButton().setVisibility(View.GONE);
            //外部辅助的旋转,帮助全屏
            //orientationUtils = new OrientationUtils(this, binding.videoPlayer);
            //初始化不打开外部的旋转
            // orientationUtils.setEnable(false);
            //增加封面
            ImageView imageView = new ImageView(getSelfActivity());
            imageView.setScaleType(ImageView.ScaleType.CENTER);
            GlideUtil.loadVideoCover(playUrl, imageView,-1,1);
            //增加title
            binding.videoPlayer.getTitleTextView().setVisibility(View.GONE);
            binding.videoPlayer.getBackButton().setVisibility(View.GONE);
            GSYVideoOptionBuilder gsyVideoOption = new GSYVideoOptionBuilder();
            gsyVideoOption.setThumbImageView(imageView)
                    .setIsTouchWiget(true)
@@ -87,11 +96,11 @@
                    .setLockLand(false)
                    .setAutoFullWithSize(false)
                    .setShowFullAnimation(false)
                    .setUrl(videoList.get(0))
                    .setUrl(playUrl)
                    .setNeedLockFull(true)
                    .setCacheWithPlay(false)
                    .setVideoTitle("")
                    .setLooping(true)
                    .setLooping(false)
                    ///不需要旋转
                    .setNeedOrientationUtils(false)
                    .setVideoAllCallBack(new GSYSampleCallBack() {
@@ -145,11 +154,18 @@
    }
    public void setVideoList(List<String> videoList) {
    public void setVideoList(List<BannerBean> videoList) {
        this.videoList = videoList;
        Bundle args = new Bundle();
        args.putSerializable("videoList", (Serializable) videoList);
        setArguments(args);
        if (isAdded()){
            initView();
        }
    }
    public List<BannerBean> getVideoList() {
        return videoList;
    }
    @Override