删除然后添加同一个孩子时的Android布局过渡动画

Jas*_*333 6 animation android drag-and-drop

场景: 我在线性布局中创建拖放功能.这是一个非常简单的布局:根目录下的一个LinearLayout和内部的许多视图(出于测试目的,它们只是具有不同颜色背景的View类的实例).我已经创建了系统,你可以"选择"一个视图,这是由长时间点击其中一个子视图引起的.这会创建拖动阴影,此时我会调用容器上的removeView()来给人一种已经拾取视图的印象.我把这个观点留在记忆中.拖动视图时,如果要放开拖动的阴影,则会移动占位符视图以显示拖动位置的eventaul拖放位置.这也很有效,然后将删除的视图添加回占位符所在的索引处.

问题: 当启用'android:animateLayoutChanges'时,动画使整个过程看起来更顺畅.由此创建的一个工件是当拖动的视图被删除时(拖动开始时被移除的相同视图被添加回容器中)显示从拖动视图的原始位置到其新位置的过渡动画.添加视图时(例如,每次更改位置时都会创建占位符),它会淡入.

分析: 从它的外观来看,容器正在记住被删除的视图,因此当再次添加相同的视图时,动画师将其解释为移动而不是添加新视图.

问题: 如何防止动画师解释移除和添加相同的子项作为移动而不是单独的移除和添加操作的此行为?

答: 这是你进来的地方.

提前致谢.