gpt4 book ai didi

android - 动态高度 Glide ImageView inside RecyclerView 在调用 notifydatasetchanged 时闪烁?

转载 作者:行者123 更新时间:2023-11-30 00:40:56 28 4
gpt4 key购买 nike

我正在创建一个 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);

最佳答案

尝试在 RecyclerView 上使用它来限制 View 的闪烁。

RecyclerView.ItemAnimator animator = mRecycler.getItemAnimator();

if (animator instanceof SimpleItemAnimator) {
((SimpleItemAnimator) animator).setSupportsChangeAnimations(false);
}

关于android - 动态高度 Glide ImageView inside RecyclerView 在调用 notifydatasetchanged 时闪烁?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42593313/

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