Android-RecyclerView动画notifyItemRemoved后notifyItemChanged

Android-RecyclerView动画notifyItemRemoved后notifyItemChanged,android,android-animation,android-recyclerview,Android,Android Animation,Android Recyclerview,我的RecyclerView defaultItemAnimator有问题。当我使用notifyItemRemoved()删除一个项目时,我还调用另一个特定索引上的notifyItemChanged()来更改其中的文本。在移除动画过程中,我调用notifyItemChanged()的项目会更改其文本,但会出现一些看起来傻乎乎的动画,就像拇指酸痛一样。(它会立即移动到新位置,而其余的会平稳地移动到新位置) 有没有一种方法可以在notifyItemRemoved()完成时得到通知,这样我就可以调用n

我的RecyclerView defaultItemAnimator有问题。当我使用notifyItemRemoved()删除一个项目时,我还调用另一个特定索引上的notifyItemChanged()来更改其中的文本。在移除动画过程中,我调用notifyItemChanged()的项目会更改其文本,但会出现一些看起来傻乎乎的动画,就像拇指酸痛一样。(它会立即移动到新位置,而其余的会平稳地移动到新位置)


有没有一种方法可以在notifyItemRemoved()完成时得到通知,这样我就可以调用notifyItemChanged()?

一种可能的解决方案是设置一个处理程序。 获取notifyItemRemoved()和notifyItemChanged()的动画类的源代码。方法内部应包含以下行:

 animation.setDuration(getRemoveDuration())
            .alpha(0).setListener(new VpaListenerAdapter() {
        @Override
        public void onAnimationStart(View view) {
            dispatchRemoveStarting(holder);
        }
在animateRemoveImpl()方法中

去申报

getRemoveDuration()
并获取值。 使用getRemoveDuration()的postDelay和notifyItemChange()在处理程序中设置。 Handler可能看起来像:

handler.postDelayed(notifyItemChanged, theDurationValue); }
请确认这个答案