我正在使用一组数据(ArrayList
)在 Android 上填充ListView
. 在我更改排序模式的那一刻,我重新排序链接到适配器的数据并调用notifyOnDataChanged()
以更新列表。
这可以完成工作,但我希望能够将每个项目动画到其新位置(如在 iOS 上),因为两个数据集包含相同的项目 - 只是重新排序。
我花了一些时间思考如何为它设置动画,并决定将所有出现在列表下方的项目设置为高度为零,然后在新位置重新设置为正常大小。这将使所有在数据中向上移动的项目实际上在列表中向上移动,因为项目在其上方消失。这就是想法,但我无法弄清楚如何实现它。
数据可以这样表示:
Set A | index | Set B
------+-------+------
A | 0 | B
B | 1 | A
C | 2 | C
D | 3 | F
E | 4 | G
F | 5 | E
G | 6 | D
我只是在寻找 iOS 默认为 Android 处理的东西。不应该这么难。