gpt4 book ai didi

android - RecyclerView 的动画人口

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:59:55 25 4
gpt4 key购买 nike

我有一个 RecyclerView,里面塞满了 CardView 的集合。我的代码本质上是 this official 上的代码文章,并且工作正常,因此无需在此处发布我的代码。在那儿。

它看起来像下面这样:

+------------------------------+
| +------------+ +------------+ |
| | card 1 | | | |
| +------------+ +------------+ |
| +------------+ +------------+ |
| | | | | |
| +------------+ +------------+ |
| +------------+ +------------+ |
| | | | | |
| +------------+ +------------+ |
| +------------+ +------------+ |
| | | | card N | |
| +------------+ +------------+ |
+-------------------------------+

如预期的那样,所有 CardViews 同时显示。

但我想要的是 View 从 View 外部到它的正常位置一个一个地显示。

+-------------------------------+         +-------------------------------+
| +------------+ | | +------------+ +------------+ |
| | card 1 | | | | card 1 | | card 2 | |
| +------------+ | | +------------+ +------------+ |
| ^ | | |
| | | | |
| | | | |
| | | | |
| | | | ^ |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
+----------------------|--------+ +-------|-----------------------+
------------+ +------------+
| card 2 | | card 3 |
+------------+ +------------+

有人知道怎么做吗?

最佳答案

创建自定义项目动画器(或扩展默认动画器)并覆盖 animateAdd,这样卡片将从屏幕下方开始动画。查看documentation了解详情。未能正确实现它可能会导致丢失 ViewHolder,因此您应该小心。

运行动画的最佳方法是创建一个动画器,将 translationYrecyclerView.getHeight() 动画化为 0。您可以检查 DefaultItemAnimator供引用。

顺便说一句,在第一个布局 channel 中,RecyclerView 不会为 View 设置动画,因为淡入淡出看起来很奇怪。要克服它,首先让您的适配器保持空白,并在第一次布局通过后添加您的项目(您可以使用处理程序并延迟将项目添加到您的适配器)。

顺便说一句,RecyclerView“还”不支持在滚动时对 View 进行动画处理,因此当用户滚动列表时添加新项目时,不会调用 animateAdd

关于android - RecyclerView 的动画人口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27198375/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com