【发布时间】:2025-12-02 09:45:02
【问题描述】:
我已经实现了一个RecyclerView,我可以在其中添加和删除项目。我希望将添加的项目添加到倒数第二个位置,并且每当我添加新项目时,动画运行良好。也就是说,最后一个项目向下移动,为新项目留出空间。
当我删除一个项目时,出现了一个我不知道如何解决的问题。我希望它的行为方式是:
- 淡出删除的元素,
- 向上移动它下面的所有项目。
实际发生的是,首先,最后一个项目消失,然后动画的其余部分发生。当被删除元素下方的项目向上移动时,最后一个项目重新出现为来自墙后。
在我看来,RecyclerView 似乎缩小到“动画后”高度,然后执行动画。
我还没有定义ItemAnimator,所以DefaultItemAnimator 必须是使用的那个。我看过this video,并在LinearLayoutManager 的自定义实现中覆盖了supportsPredictiveItemAnimations 方法,但它并没有修复它。
【问题讨论】:
标签: android android-recyclerview animator