mcpField
F
flutter-animation

flutter-animation

github.com/thienqo开发981 次安装2 天前更新
代码仓库

关于 flutter-animation

flutter-animation 是面向 Flutter 开发者的界面动效技能,帮助选择动画机制、管理时序与中断,并考虑减少动态效果偏好及验证动画状态。

主要功能

  1. 01选择隐式或显式动画
  2. 02管理时序与中断
  3. 03为跨路由元素使用 Hero
  4. 04支持减少动态效果偏好
  5. 05测试动画状态与 ticker 生命周期

适用场景

  1. 01为界面状态变化选择动画方式
  2. 02构建路由间的转场
  3. 03适配无障碍动态效果设置
  4. 04检查中断和反向播放的动画

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/thienqo/flutter-skills --skill flutter-animation

安装后在 Claude Code 中输入/flutter-animation确认已加载。

附带文件evals/cases.jsonreferences/motion-patterns-and-reduced-motion.md

详细介绍

Flutter Animation

使用动效来说明状态变化、层级或连续性。确保动效可以中断且易于访问。

负责管理时间、插值、序列、稳定标识和中断。将模糊、玻璃效果、折射、着色器 uniform 和光学图层合成交由 flutter-visual-effects 处理;两者都适用时,由动画状态驱动效果,而不是在渲染器中重复管理控制器。

选择机制

  • 少量属性变化由状态控制时,使用隐式动画。
  • 当时间、序列、重复、打断或多个值需要显式管理时,使用 AnimationController。
  • 仅当同一个概念元素会跨路由持续存在且标签保持唯一时,才使用 Hero。
  • 仅当无法通过 Widget 组合高效实现效果时,才使用自定义 painter 或更底层的动画。
  • 在拥有动画控制器的状态生命周期中保留控制器,并正确释放。

未进行性能分析前,不要在大型子树中动画化对布局影响较大的属性。避免叠加无关的隐式动画,以免难以理清时间关系。

减少动态效果

通过项目兼容的 Flutter API 读取平台的无障碍偏好设置。将非必要动效替换为即时或低动态效果的过渡,同时保留其含义并确保任务可以完成。

验证

在适用时测试初始、进行中、完成、反向、被中断和减少动态效果等状态。检查是否存在 ticker 泄漏,并在具有代表性的设备上以 profile 模式分析复杂动效。

当动效模式或减少动态效果属于范围内时,请遵循动效模式与减少动态效果参考。

来源

评论

支持 Markdown