Android 中的动画 LayoutParams 与平移和缩放

Animating LayoutParams vs. Translation and Scale in Android

似乎动画视图的比例和平移的代码总是比动画视图的 LayoutParams(即宽度、高度等)的代码更简洁明了(例如使用 .animate())需要使用动画师(ValueAnimatorObjectAnimator 等)

这让我想知道对某个视图的 LayoutParams 进行动画处理是否被认为是一种不好的做法,或者它是否 "heavier" 比对视图的平移和缩放属性进行动画处理更好?

此外,无法在 SO 上找到任何答案,所以如果有人能阐明这个主题,那就太好了。

如果您有更复杂的布局并尝试通过 layoutParams 设置动画,您很快就会看到卡顿,因为它在每一帧触发 requestLayout() 并且父 ViewGroup 必须执行 onMeasure()onLayout()整个视图层次结构。

正如@pskink 所提到的,在 activity/fragment/layout 中执行过渡和动画的一种更简洁的方法是使用 scenes and transitions 这正是我所做的,并且经过一些调整后效果非常完美!