天天看点

Recylerview的adapter.setHasStableIds(true)

Recylerview的item是 ImageView 和  TextView构成,当数据改变时,我们会调用 notifyDataSetChanged,这个时候列表会刷新,为了使 url 没变的 ImageView 不重新加载(图片会一闪),我们可以用 

setHasStableIds(true);
           

使用这个,相当于给ImageView加了一个tag,tag不变的话,不用重新加载图片。但是加了这句话,会使得 列表的 数据项 重复!! 我们需要在我们的Adapter里面重写 getItemId就好了。

@Override
public long getItemId(int position) {
    return position;
}
           

继续阅读