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

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

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

最佳答案

RecyclerView具有内置的动画,通常可以添加精美的效果。在您的情况下,您将要禁用它们:

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

(默认的回收者 View 动画师应该已经是SimpleItemAnimator的实例)

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

10-10 03:48