gpt4 book ai didi

java - 防止过滤适配器数据时重新加载图像 [Android]

转载 作者:太空宇宙 更新时间:2023-11-04 09:04:44 26 4
gpt4 key购买 nike

我从 fragment 搜索 View 调用过滤数据函数,它工作正常,数据正在被过滤,但图像正在重新加载。如何防止这种情况

public menuadapter(ArrayList<GridItem> mGridDat, Context context, OnItemClickListener listener) {
this.mGridData=new ArrayList<GridItem>();
this.orignallist=new ArrayList<GridItem>();
mGridData.addAll(mGridDat);
orignallist.addAll(mGridDat);
this.context = context;
this.listener = listener;
this.Session=new session(context);
}

public void onBindViewHolder(final MyViewHolder holder, final int position) {
final Activity activity = (Activity)context;


String capital=mGridData.get(position).getTitle().substring(0,1).toUpperCase()+mGridData.get(position).getTitle().substring(1).toLowerCase();
holder.txtview.setText(capital);

Picasso.with(context).load(mGridData.get(position).getImage()).fit().centerCrop().skipMemoryCache().into(holder.imageView);
}

过滤数据功能

    public void filterData(String query){
query=query.toLowerCase();
//Log.v("check1",String.valueOf(orignallist.size()));
mGridData.clear();
if(query.isEmpty()){
mGridData.addAll(orignallist);
// Log.v("check2",String.valueOf(orignallist.size()));
}
else {
//Log.v("check0",String.valueOf(orignallist.size()));
ArrayList<GridItem> newlist = new ArrayList<>();
for(GridItem gd: orignallist) {

if ((gd.getTitle().toLowerCase().contains(query)) ) {
newlist.add(gd);
}
}

if(newlist.size()> 0){

mGridData.addAll(newlist);
}

}

notifyDataSetChanged();
}

最佳答案

试试这个

    Picasso.with(context).load(mGridData.get(position).getImage()).fit().centerCrop().networkPolicy(NetworkPolicy.OFFLINE).into(holder.imageView);

您需要使用以下属性, skipMemoryCache()

OFFLINE

public static final NetworkPolicy OFFLINE

Forces the request through the disk cache only, skipping network.

https://square.github.io/picasso/2.x/picasso/com/squareup/picasso/NetworkPolicy.html

关于java - 防止过滤适配器数据时重新加载图像 [Android],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60349426/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com