深入探索Silverlight动画:从基础到高级应用
1. 动画缓动的重要性与方法
线性动画常常给人机械和不自然的感觉,而精致的用户界面会使用模拟现实世界系统的动画效果。要改善动画效果,关键在于改变变化速率,避免以固定速率改变属性,而是设计能在过程中加速或减速的动画。Silverlight提供了几种选择:
- 基于帧的动画 :适合需要对每个细节有绝对控制的场景,如动作游戏或遵循物理规则的模拟。但缺点是工作量大,因为Silverlight动画模型提供的帮助很少。
- 关键帧动画 :将动画分成多个片段,并可使用关键曲线为不同片段添加加速或减速效果。不过实现起来很繁琐,通常需要大量的XAML标记,在使用设计工具(如Expression Blend)时最为合适。
- 预建的动画缓动函数 :只需定义动画的起始和结束属性值,再添加一个现成的数学函数来改变动画的进程,使其在不同点加速或减速。这种方法工作量远小于前两种。
2. 使用缓动函数
使用动画缓动时,只需将动画对象的 EasingFunction 属性设置为缓动函数类(继承自 EasingFunctionBase )的实例。通常需要设置缓动函数的一些属性,可能需要尝试不同的设置来获得想要的效果,但无需代码,只需很少的额外XAML。
以下是一个对按钮进行动画处理的示例:
<Storyboard x:Name="growStoryboar
超级会员免费看
订阅专栏 解锁全文
25

被折叠的 条评论
为什么被折叠?



