我正在使用Picasso将URL中的图像加载到卧式recyclerview中,如下所示:

public class pIndicatorAdaptor extends
         RecyclerView.Adapter<pIndicatorAdaptor.IndicatorViewHolder> {

   //constructor and other stuff

   @Override
   public IndicatorViewHolder onCreateViewHolder(ViewGroup parent, int vType) {
        View view = layoutInflater.inflate(R.layout.i_item, parent, false);
        return new IndicatorViewHolder(view);
    }
   @Override
    public void onBindViewHolder(IndicatorViewHolder holder, int position) {
        picasso.load(images.get(position).getSrc()).fit().centerCrop()
                .into(holder.imageView, null);
    }

    class IndicatorViewHolder extends RecyclerView.ViewHolder {
        ImageView imageView;

        IndicatorViewHolder(@NonNull View itemView) {
            super(itemView);
            imageView = itemView.findViewById(R.id.imageView);
        }
    }
}


但是我得到这样的结果,底部的水平recyclerview是我加载图像的位置:

最佳答案

当您像这样滚动浏览回收站视图时,每次都会加载图像,当然,加载图像也要花费很多时间。我认为您应该在此上使用glide,因为glide非常适合从缓存中加载图像(如果存在) );)

关于java - Recyclerview无法正确回收 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55785019/

10-10 23:15