动画布局与动画层次



我不知道animateLayoutanimateHierarchy之间的区别。有时它们的工作方式相同,有时只有其中一个可以获得动画。阅读链接的javadocs,我看不出有什么区别。感谢的澄清

animateLayout在平面层次结构中工作,因此它不会递归到下面的容器中来移动它们。层次结构确实重复出现。后一种方法似乎更优越,应该一直使用,但事实并非如此。

在大多数情况下,您只想在平面层次结构中移动组件,并将容器视为其他组件。在这种情况下,animateLayout()非常有效。animateHierarchy()可能会失败,因为它决定在嵌套容器中移动元素,并导致它们不正确地模糊,而不是仅仅调整容器的大小。

在其他情况下,修改后的布局可能不是平面的。例如,我们可能有多个布局在一个层次结构中协同工作,并且我们对组件树进行了更改。在这种情况下,animateLayout()将没有任何作用,但animateHierarchy()可以解决它

CCD_ 8在定义上更慢且更复杂。因此,在适用的情况下,您应该更喜欢animateLayout()

最新更新