美文网首页优秀案例
Android RecyclerView 加载网络图片列表显示高

Android RecyclerView 加载网络图片列表显示高

作者: 南方coder | 来源:发表于2020-05-18 11:34 被阅读0次

    当我们使用RecyclerView加载网络图片时,如果item里的宽高不是固定的,在网络条件不好或者较卡的手机就会出现加载不全或者不显示的问题,这是因为网络图片属于异步加载,而RecyclerView的宽高在图片加载前就测量好的话就会导致高度不全。

    解决方法:只要在图片加载成功回调后让RecyclerView重新测量和布局就可以了,方法requestLayout();

    以glide加载图片为例

    Glide.with(context).load(url)
    .listener(new RequestListener() {
                @Override
                public boolean onLoadFailed(@Nullable GlideException e, Object model, Target target, boolean isFirstResource) {
                            return false;
                            }
    
                @Override
                public boolean onResourceReady(Drawable resource, Object model, Target target, DataSource dataSource, boolean isFirstResource) {
                            recyclerView.requestLayout(); //请求重新 测量宽高和布局
                            return false;
                            }
    })
    .into(imageView);
    
    

    相关文章

      网友评论

        本文标题:Android RecyclerView 加载网络图片列表显示高

        本文链接:https://www.haomeiwen.com/subject/tocuohtx.html