Android 带有LinearLayoutManager和预测动画的RecyclerView
我正在使用垂直线性布局管理器和DefaultItemAnimator构建一个相对简单的RecyclerView。它只处理添加和删除项目(没有动画更改、交换、移动等) 我的项目将被添加到列表中的特定位置,因为它是按特定顺序排序的,因此列表必须滚动到添加项目的位置,以便向用户显示 还有一个棘手的部分——LinearLayoutManager和DefaultItemAnimator似乎不支持预测动画。目前,由于滚动,所有出现的项目都是动画,而不仅仅是新添加的项目,我想只在新项目上运行一个特定的动画 首先,我读过文件,上面说: 想要更好的项目动画体验的布局经理,在哪里 可以根据位置在屏幕上设置项目的动画 当项目不在屏幕上时,它们就存在,然后是LayoutManager 应该从supportsPredictiveItemAnimations()和添加返回true onLayoutChildren的附加逻辑(回收商、州) 这是Android 带有LinearLayoutManager和预测动画的RecyclerView,android,animation,android-recyclerview,linearlayoutmanager,Android,Animation,Android Recyclerview,Linearlayoutmanager,我正在使用垂直线性布局管理器和DefaultItemAnimator构建一个相对简单的RecyclerView。它只处理添加和删除项目(没有动画更改、交换、移动等) 我的项目将被添加到列表中的特定位置,因为它是按特定顺序排序的,因此列表必须滚动到添加项目的位置,以便向用户显示 还有一个棘手的部分——LinearLayoutManager和DefaultItemAnimator似乎不支持预测动画。目前,由于滚动,所有出现的项目都是动画,而不仅仅是新添加的项目,我想只在新项目上运行一个特定的动画 首
RecyclerView.LayoutManager
的文档,因此LinearLayoutManager
作为一个孩子应该已经有了额外的逻辑(或者没有?)
问题是它的onlayoutchilds
方法太复杂了,我不确定到底应该修改哪一部分来区分“屏幕显示”和“全新”视图
我也读过,它解决了我的确切问题,但示例使用了FixedGridLayoutManager,而且我发现它太复杂,无法理解和调整整个布局逻辑
我不是在寻找一个现成的复制粘贴解决方案,但我需要了解布局功能的一些线索。我担心写我自己的一个,除了乏味之外,必然会产生更糟糕的结果,因为其中已经有200行代码,是由比我更聪明的人编写的^^
理想情况下,我想添加一些东西,或者做一些小的改变,以避免破坏整个测量、报废、回收和其他复杂的事情
提前感谢,欢迎任何帮助