Compose 动画落地指南:交互动效与性能调优
动画性能优化无障碍
动画不仅是吸引力,更是信息传递的重要渠道。Compose 提供了基于状态的 `animate*AsState`、`Transition`、`AnimationSpec` 等能力,我们建议将动效分为“情境反馈”“空间定位”“品牌表达”三类进行设计。
性能控制基线
- 启用 `RenderThread` 监控,确保 GPU 呈现耗时稳定在 8ms 内;
- 对频繁触发的动画使用 `MutableTransitionState` 避免重组抖动;
- 在 `rememberInfiniteTransition` 中设置合理的 `label`,方便使用 `Macrobenchmark` 与 `Perfetto` 排查。
无障碍与用户控制
遵循 WCAG 2.2,必须为动画提供“减少动态效果”选项。Compose 可以通过 `LocalViewConfiguration.current` 中的 `minimumTouchTargetSize` 搭配 `LocalAccessibilityManager` 获取用户偏好。