《Motion Design for iOS》(九)

2021-11-23 12:57:43 浏览数 (1)

计划动画

如果把动画比作一个房子,你现在至少已经在熟悉造房子的工具了:锤子、扳手和螺丝刀。你熟悉的动画的工具也就是你在创建一个动画的时候操作的特定属性。但这还不是你考试思考动画和设计动作需要知道的全部。

现在是时候开始布局动画的蓝图了。这是指准确描述动画中每一步将会发生什么的说明。如我之前提到的,你不能在开会的时候仅仅挥舞你的手臂来解释当用户点击一个按钮的时候会发生什么,你需要一个语言来描述和拆分你在想想一个界面元素运动时头脑中发生的事情。在你创建之前,你的下一步应该是思考将其化为细粒度并且写下动画的各个部分的细节。这就是动画的计划。

对于每个动画化的元素,在我开始写代码之前我喜欢思考以下几点。

  1. 元素的初始属性是什么?只是在屏幕的底部?是完全透明的吗?它会缩小的微观尺度吗?它是巨大的吗?
  2. 元素的最终属性是什么?元素现在是在屏幕的中间吗?现在是对用户完全可见的吗?它是不是被旋转到一个特定的角度了?他是不是有了一个不同的背景色?
  3. 动画应该持续多长时间?在这个初始阶段要知道动画的准确时间是很难的,所以我喜欢把时间转化为我打响指的时间长度。一个响指?三个响指?因为要在结束移动前进行弹跳所以是五个响指?
  4. 元素动画的时候会发生什么?通常你会同时动画很多事情,时间上一个个错开。作为整体的一部分来思考这些次级动画很重要。
  5. 元素结束动画的时候会发生什么?当你的动画结束的时候应该移除元素吗?或者也许在结束动画三个响指之后你想要它从另一个方向上离开?或者当这完成后,另一个元素会开始它的动画?

像这样组织你的思路会很有帮助。首先,它会强制你将一个抽象的动画概念模型转化为你可以跟他人描述的具体事物。然后,通过这个步骤你可能会发现一些在宏观视角下没有发现的需要处理的问题。元素2适合元素1同时开始动画吗?还是稍微错开一些?错开的时间应该多长?我应该将元素3移动多少距离来和元素4对齐?在我将元素5缩回到1.0倍大小前应该将它置为多大?我是应该将元素6淡出还是仅仅将它的比例减小到0?你一开始往往不会有这些问题的答案,但当你开始创建和运行你的动画的时候就会很快得到的。

查看完整合集:https://github.com/Cloudox/Motion-Design-for-iOS

查看作者首页

0 人点赞