【问题标题】:Image & Video slider using Viewpager2 , some videos appeared missing in sliding使用 Viewpager2 的图像和视频滑块,滑动时出现一些视频丢失
【发布时间】:2020-10-18 11:15:06
【问题描述】:

我正在处理图像和视频滑块。我可以在viewpager 2中加载我的图像和视频。但是现在,图像工作正常,但在滑动视频期间只会出现有时..否则下一个图像会取代它..有什么问题?请..我是新手..

 public void onBindViewHolder(@NonNull final SlideViewHolder holder, int position) {
        //holder.linearLayout.removeAllViews();

        Log.d("CHKck", position + " " + getItemCount());
        StatusModel statusModel = itemList.get(position);
        File file = statusModel.getFile();
        Log.d("CHKfileadapt", String.valueOf(file) + " " + position);
        if (file.exists()) {
            if (statusModel.isVideo) {
                holder.slideVideo.setVisibility(View.VISIBLE);
                holder.slideVideo.setVideoPath(file.getAbsolutePath());
                MediaController mediaController = new MediaController(context);
                mediaController.setAnchorView(holder.slideVideo);
                holder.slideVideo.setMediaController(mediaController);
                holder.slideVideo.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                    @Override
                    public void onPrepared(MediaPlayer mp) {
                        mp.setLooping(true);
                        holder.slideVideo.start();
                    }
                });
            } else {
                holder.slideImage.setVisibility(View.VISIBLE);
                Glide.with(context).load(file).into(holder.slideImage);
            }
        }
    }

【问题讨论】:

    标签: android android-recyclerview android-adapter android-viewpager2


    【解决方案1】:

    发生这种情况是因为我一直在 onBindViewHolder() 中添加视图,并且从未删除已删除的前一个视图。这背后的原因是 RecyclerView.Adapter 重复使用同一个视图持有者。这是我以前从 Mr.ADM 那里得到的建议..所以我初始化了 onbindingviewholder 中的所有视图..因此问题解决了..谢谢

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-19
      • 1970-01-01
      • 2023-03-08
      • 1970-01-01
      相关资源
      最近更新 更多