Android-滚动时图像出现故障并加载到RecyclerView中的另一个项目(该项目来自API中具有空或空图像的项)
创始人
2024-08-19 18:30:27
0

此问题的解决方法是检查正在滚动的 RecyclerView ,并在加载图像之前先检查目标项是否为null或空。可以使用如下代码示例:

public class MyAdapter extends RecyclerView.Adapter {
    private List items;

    public static class ViewHolder extends RecyclerView.ViewHolder {
        public ImageView imageView;
        public ViewHolder(View itemView) {
            super(itemView);
            imageView = (ImageView) itemView.findViewById(R.id.image_view);
        }
    }

    @Override
    public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View itemView = LayoutInflater.from(parent.getContext())
                .inflate(R.layout.my_item_layout, parent, false);
        return new ViewHolder(itemView);
    }

    @Override
    public void onBindViewHolder(ViewHolder holder, int position) {
        MyItem item = items.get(position);
        if (!TextUtils.isEmpty(item.getImageUrl())) {
            // 加载图像
            Glide.with(holder.imageView.getContext())
                    .load(item.getImageUrl())
                    .into(holder.imageView);
        } else {
            // 清空图像
            holder.imageView.setImageDrawable(null);
        }
    }

    @Override
    public int getItemCount() {
        return items.size();
    }

    public void setItems(List items) {
        this.items = items;
        notifyDataSetChanged();
    }
}

在 onBindViewHolder 方法中,我们首先检查目标项的 imageUrl 是否为空。如果不为空,则加载图像。如果为空,则清空 ImageView(通过设置 null Drawable)。这样可以避免图像在滚动时出现故障,并且不会将图像加载到与目标项不匹配的另一个项目中。

相关内容

热门资讯

透视专业!德普之星辅助软件(透... 透视专业!德普之星辅助软件(透视)hh poker辅助器先试用,教程经验(的确有挂)-哔哩哔哩1、h...
hhpoker脚本!fishp... hhpoker脚本!fishpoker透视底牌(透视)方法-切实解密存在有挂1、玩家可以在fishp...
透视开挂!wpk透视插件(透视... 透视开挂!wpk透视插件(透视)wepokerplus透视脚本免费,教程经验(有挂攻略)-哔哩哔哩1...
竞技联盟破解版最新版!德州透视... 竞技联盟破解版最新版!德州透视插件(透视)教程-真是关于是有挂1、超多福利:超高返利,海量正版游戏,...
透视推荐!hh poker软件... 透视推荐!hh poker软件(透视)wepokerplus开挂,教程教材(有挂助手)-哔哩哔哩1、...
epoker有透视吗!wepo... epoker有透视吗!wepoker怎么看牌型(透视)挂-其实分享是真的挂1、这是跨平台的wepok...
透视开挂!wepoker-h5... 透视开挂!wepoker-h5下载(透视)wpk私人局有透视吗,教程烘培(有挂方法)-哔哩哔哩1、w...
wepoker开辅助能查到吗!... wepoker开辅助能查到吗!wepoker有辅助工具吗(透视)方法-果然教你真的有挂wepoker...
透视总结!佛手大菠萝有挂吗(透... 透视总结!佛手大菠萝有挂吗(透视)wepoker挂,教程妙计(有挂细节)-哔哩哔哩1、佛手大菠萝有挂...
wpk模拟器多开!We pok... wpk模拟器多开!We poker辅助器下载(透视)工具-竟然有挂有挂wpk模拟器多开!We pok...