Skip to content
阅读进度

View 动画 属性动画和窗口动画有什么区别? ​

返回 View 与显示链路 目录

标准回答 ​

传统 View Animation 主要改变绘制时的视觉变换,通常不改变 View 的布局位置;属性动画直接更新对象属性,例如 translationX、alpha 或 width,是否触发布局取决于属性实现。窗口动画处理的是整个 Window 或 Task 的系统转场,常围绕 SurfaceControl 对图层或 animation leash 做位置、缩放、透明度与裁剪变化,能覆盖跨进程应用窗口。给页面根 View 做动画可以实现页面内部效果,但控制其他应用的任务转场需要相应系统机制和权限。

延伸追问 ​

属性动画改变 translationX 并不等同于改变 LayoutParams;修改 width 这类布局属性可能带来每帧重新布局。

内容来源 ​

用完整回答理解机制,用真实证据解释项目。