如何解决使用Viewpager2的“图像和视频”滑块,一些视频似乎在滑动中丢失
我正在使用图像和视频滑块。我可以将图像和视频加载到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);
}
}
}
解决方法
之所以发生这种情况,是因为我一直在onBindViewHolder()中添加视图,并且从未删除已删除的前一个视图。这背后的原因是RecyclerView.Adapter重复使用同一视图持有者。这是我在这里从ADM先生那里得到的先前建议。所以我在onbindingviewholder中初始化了所有视图。 >
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。