选择动画 API

下图可以帮助您确定要使用哪种 API 来实现您的动画效果。

描述决策树的流程图,用于选择适当的动画 API
图 1. 描述如何选择适当的动画 API 的决策树。

描述决策树的流程图,用于选择适当的动画 API

使用以下决策树为您的用例选择最合适的动画 API:

  • 您的动画是基于艺术素材(即 SVG 或图片)的吗?
    • 是:它是否使用简单的 SVG(即带有微动画的图标)?
    • 否:动画是否需要无限重复?
      • 是:rememberInfiniteTransition
      • 否:您是否要为布局添加动画效果?
        • 是:您是否在具有不同内容的可组合项之间切换?
          • 是:您是否使用 Navigation-Compose?
          • 否:您是否要为内容的出现或消失添加动画效果?
        • 否:您是否要为多个属性添加动画效果?
          • 是:这些属性是否完全独立?
          • 否:动画是否具有预定义的目标值?
            • 是:animate*AsState。对于文本,请使用 TextMotion.Animated
            • 否:动画是否由手势驱动且是唯一的可信来源?
              • 是:AnimatableanimateTo / snapTo 搭配使用。
              • 否:动画是否为一次性动画,且无状态管理?

下载该图的 PDF 版本