Silverlight动画:从基础到高级技巧
1. Silverlight动画基础与故事板
在Silverlight中,故事板(Storyboard)是控制动画的重要工具,但与WPF不同的是,Silverlight的故事板类没有提供用于监控事件进度的事件,例如没有 CurrentTimeInvalidated 事件来告知动画正在推进。
2. 线性动画的不足与动画缓动的引入
线性动画存在机械和不自然的缺点,而复杂的用户界面通常会使用模拟现实世界系统的动画效果。要改善动画效果,关键在于改变变化率,即设计能在过程中加速或减速的动画。Silverlight提供了几种实现方式:
- 基于帧的动画 :可对动画的每个细节进行绝对控制,但工作量大,因为Silverlight动画模型对此帮助有限。
- 关键帧动画 :将动画分为多个段,并可使用关键曲线为不同段添加加速或减速效果。不过实现起来很繁琐,通常需要大量的XAML标记,在使用如Expression Blend等设计工具时较为合适。
- 预建动画缓动函数 :只需设置动画对象的 EasingFunction 属性,并添加一个现成的数学函数来改变动画的进程,工作量相对较少。
3. 使用动画缓动函数
使用动画缓动函数时,需将动画对象的 EasingFunction 属性设置为缓动函数类(继承自 EasingFunctionBase )的实例,并
超级会员免费看
订阅专栏 解锁全文
135

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



