Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何禁用RecyclerView动画?_Android_Kotlin_Android Recyclerview - Fatal编程技术网

Android 如何禁用RecyclerView动画?

Android 如何禁用RecyclerView动画?,android,kotlin,android-recyclerview,Android,Kotlin,Android Recyclerview,我每秒都在使用和更新我的RecyclerView。由于数据正在改变,我得到了这个恼人的Android默认动画。如何禁用默认的更改动画?用于删除的其余部分可以保留。您可以通过在“回收器”视图中添加以下行来禁用动画 recyclerView.itemAnimator = null 这将禁用所有默认动画 对于java recyclerView.setItemAnimator(null); 在内部,这是setItemAnimator方法 ItemAnimator mItemAnimator = ne

我每秒都在使用和更新我的RecyclerView。由于数据正在改变,我得到了这个恼人的Android默认动画。如何禁用默认的更改动画?用于删除的其余部分可以保留。

您可以通过在“回收器”视图中添加以下行来禁用动画

recyclerView.itemAnimator = null
这将禁用所有默认动画

对于java

recyclerView.setItemAnimator(null);
在内部,这是
setItemAnimator
方法

ItemAnimator mItemAnimator = new DefaultItemAnimator();

public void setItemAnimator(@Nullable ItemAnimator animator) {
        if (mItemAnimator != null) {
            mItemAnimator.endAnimations();
            mItemAnimator.setListener(null);
        }
        mItemAnimator = animator;
        if (mItemAnimator != null) {
            mItemAnimator.setListener(mItemAnimatorListener);
        }
    }
因此,我们将
mItemAnimator
设置为null,默认设置为
DefaultItemAnimator()