我正在创建一个 RecyclerView 来显示一些图像和文本,然后用户可以为 RecyclerView 的行添加书签。RecyclerView 的图像在宽度和高度上匹配父级将是 wrap_content。单击书签时,适配器会在 RecyclerView 中调用 notifydatasetchanged。我的问题是,在调用 notifydatasetchanged 更改后,RecyclerView 会按高度闪烁其图像。
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {
if (holder instanceof VHITEM) {
final VHITEM VHitem = (VHITEM) holder;
Glide.with(mContext)
.load(articleDataList.get(position).SourcePath)
.asBitmap()
.diskCacheStrategy(DiskCacheStrategy.ALL)
.placeholder(R.drawable.defaultimage)
.error(R.drawable.defaultimage)
.dontAnimate()
.into(VHitem.imageViewTagPic);
}
}
OnButton 单击
VHItem.imageViewAddRemoveBookmark.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
notifyDataSetChanged(); }
}
RecyclerView 配置
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getActivity());
recyclerView.setLayoutManager(linearLayoutManager);