gpt4 book ai didi

android - 如何防止 RecyclerView 项目在 notifyItemChanged(pos) 后闪烁?

转载 作者:IT老高 更新时间:2023-10-28 23:08:11 26 4
gpt4 key购买 nike

我目前有一个回收站 View ,其数据每 5 秒更新一次。为了更新列表中的数据,我正在使用

notifyItemChanged(position);
notifyItemRangeChanged(position, mList.size());

每次我调用 notifyItemChanged() 时,我的回收站 View 上的项目都会正确更新,但是,它会闪烁,因为这会导致再次调用 onBindViewHolder。所以就好像每次都是新的负载。如果可能的话,我怎样才能防止这种情况发生?

最佳答案

RecyclerView 内置动画,通常会添加漂亮的抛光效果。在您的情况下,您需要禁用它们:

((SimpleItemAnimator) mRecyclerView.getItemAnimator()).setSupportsChangeAnimations(false);

(默认的回收 View 动画器应该已经是 SimpleItemAnimator 的一个实例)

对于 Kotlin,

(mRecyclerView?.itemAnimator as SimpleItemAnimator).supportsChangeAnimations = false

关于android - 如何防止 RecyclerView 项目在 notifyItemChanged(pos) 后闪烁?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42379660/

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