首页 > 代码库 > WP8.1 UI 编程 七、动画

WP8.1 UI 编程 七、动画

1. 普通动画的目标属性:

普通UI控件属性,如Width,Height等;变换特效属性;三维变换特效属性。

普通UI控件属性会触发布局系统重新工作,因此首选后两种属性进行动画运用。

 

动画类位于Windows.UI.Xaml.Media.Animation命名空间下。

基于时间线动画,继承自Timeline:

线性插值动画,即From/To/By动画,反映对象在指定时间范围内持续渐变。

关键帧动画,更强大,可以指定任意数量目标值,控制它们之间的插值方法。

基于帧动画:

有些动画无法通过以上方法实现,通常是复杂动画,如模拟雪花飘落。每一帧都通过事件重绘界面。

 

线性插值动画有DoubleAnimation,ColorAnimation和PointAnimation,分别对Double,Color,Point类型的属性进行动画处理。

From:起始值

To:目标值,如果同时设置By,则优先于By

By:变化量值,对非数值类型没有意义

Duration:完整播放一次动画的时间长度,默认为1秒,格式为“时:分:秒”(TimeSpan对象),如果在代码中设置,则使用TimeSpan隐式转换为Duration。Duration提供了两个属性,Automatic和Forever。

AutoReverse:时间线是否自动倒退,默认为false。

RepeatBehavior:时间线重复播放次数。

RepeatBehavior有三种语法:

设置为“Forever”,表示无限重复;

重复运行次数,由一个整数迭代次数,和字符x构成,如“3x”表示三次;

时间跨度,格式为 “[天.]时:分:秒[.秒小数部分]”。

 

DoubleAnimation与Transform结合可以实现变换动画,只需指定Storyboard的TargetName和TargetProperty属性,与所用Transform关联。

ColorAnimation本质是对RGB色值的线性处理。用法类似,注意TargetProperty属性的设置,如:(Button.Background).(SolidColorBrush.Color)。

PointAnimation是Point的线性运动,可以实现Path的动画。

 

3. 关键帧动画

 

WP8.1 UI 编程 七、动画