基础动效包括透明度、位移、旋转、缩放、帧动画五种动效,其中帧动画由多张图片构成动效效果,其余动效对一张图片构成动效效果,5种动效可以叠加使用,每种动效相互独立,各自循环播放。动效由若干关键帧组成,关键帧包括帧属性和时间,除图片原动画外,其它动效会根据当前时间找到相邻的两个关键帧,然后线性插值计算当前的属性。 如果第一帧时间不从0开始,则默认时间为0的第一帧为图片原始属性,时间单位为毫秒。 位移动效中的位置是相对于图片自身的坐标。
<Image x="" y="" src="">
<AlphaAnimation delay="" repeat="" name="">
<Alpha a="" time=""/>
</AlphaAnimation>
</Image> 参数 | 类型 | M/O(必选/可选) | 说明 |
|---|---|---|---|
delay | 数值 | O | 延迟,以毫秒记。延迟设置的毫秒后执行动画播放。 |
repeat | 数值 | O | 动画重复播放次数,N表示重复N次,0表示无限次循环。 |
name | 字符串 | O | 取值{“animation_flag_pause ”,“animation_flag_forever”}。
|
a | 数值 | M | 取值范围为[0-255],透明度0-255,小于等于0,图片不显示。 |
time | 数值 | M | [0-~],相对于起始帧的间隔时间(毫秒),不小于0。 |
示例:图片动画效果,从0-500ms透明度由0变为35,500-1000ms透明度由35增至65,直至2500ms时变为150。
<Image x="210" y="490" src="aixin7.png">
<AlphaAnimation>
<Alpha a="0" time="0"/>
<Alpha a="35" time="500"/>
<Alpha a="65" time="1000"/>
<Alpha a="95" time="1500"/>
<Alpha a="125" time="2000"/>
<Alpha a="150" time="2500"/>
</AlphaAnimation>
</Image> <Image x="" y="" src="">
<PositionAnimation delay="" repeat="" name="">
<Position x="" y="" time=""/>
</PositionAnimation>
</Image> 参数 | 类型 | M/O(必选/可选) | 说明 |
|---|---|---|---|
delay | 数值 | O | 延迟,以毫秒记。延迟设置的毫秒后执行动画播放。 |
repeat | 数值 | O | 动画重复播放次数,N表示重复N次,0表示无限次循环。 |
name | 字符串 | M | 取值{“animation_flag_pause ”,“animation_flag_forever”}。
|
x | 数值 | M | 相对于图片初始位置的x坐标,单位为像素,整数。 |
y | 数值 | M | 相对于图片初始位置的y坐标,单位为像素,整数。 |
time | 数值 | M | [0-~],相对于起始帧的间隔时间(毫秒),不小于0。 |
<Image x="610" y="390" src="ty.png">
<PositionAnimation>
<Position x="0" y="0" time="0"/>
<Position x="-300" y="0" time="1000"/>
<Position x="-300" y="300" time="2000"/>
<Position x="0" y="300" time="3000"/>
<Position x="0" y="0" time="4000"/>
</PositionAnimation>
</Image> <Image x="" y="" src="">
<RotationAnimation delay="" repeat="" name="">
<Rotation angle="" time=""/>
</RotationAnimation>
</Image> 参数 | 类型 | M/O(必选/可选) | 说明 |
|---|---|---|---|
delay | 数值 | O | 延迟,以毫秒记。延迟设置的毫秒后执行动画播放。 |
repeat | 数值 | O | 动画重复播放次数,N表示重复N次,0表示无限次循环。 |
name | 字符串 | O | 取值{“animation_flag_pause ”,“animation_flag_forever”}。
|
angle | 数值 | M | 旋转角度。 |
time | 数值 | M | [0-~],相对于起始帧的间隔时间(毫秒),不小于0。 |
示例:图片动画效果,每帧更新图片旋转角度。例如,从0到300ms时,图片顺时针旋转角度旋转90°。
<Image x="100" y="200" src="ty.png">
<RotationAnimation>
<Rotation angle="0" time="0"/>
<Rotation angle="90" time="300"/>
<Rotation angle="180" time="600"/>
<Rotation angle="270" time="900"/>
<Rotation angle="360" time="1200"/>
</RotationAnimation>
</Image> <Image x="" y="" src="">
<SizeAnimation delay="" repeat="" name="">
<Size w="" h="" time=""/>
</SizeAnimation>
</Image> 参数 | 类型 | M/O(必选/可选) | 说明 |
|---|---|---|---|
delay | 数值 | O | 延迟,以ms毫秒记。延迟delay毫秒后执行动画播放。 |
repeat | 数值 | O | 动画重复播放次数,N表示重复N次,0表示无限次循环。 |
name | 字符串 | O | 取值{“animation_flag_pause ”,“animation_flag_forever”}。
|
w | 数值 | M | 图片的宽度,单位为像素,正整数。 |
h | 数值 | M | 图片的高度,单位为像素,正整数。 |
time | 数值 | M | [0-~],相对于起始帧的间隔时间(毫秒),不小于0。 |
示例:图片缩放动画,每帧更新图片大小。例如,在0-600ms时,图片大小由114x120增至278x301。
<Image x="200" y="300" src="ty.png">
<SizeAnimation>
<Size w="114" h="120" time="0"/>
<Size w="278" h="301" time="600"/>
<Size w="114" h="120" time="1200"/>
<Size w="278" h="301" time="1800"/>
</SizeAnimation>
</Image> <Image x="" y="" src="">
<SourcesAnimation delay="" repeat="" name="">
<Source src="" time=""/>
</SourcesAnimation>
</Image> 参数 | 类型 | M/O(必选/可选) | 说明 |
|---|---|---|---|
delay | 数值 | O | 延迟,以ms毫秒记。延迟delay毫秒后执行动画播放。 |
repeat | 数值 | O | 动画重复播放次数,N表示重复N次,0表示无限次循环。 |
name | 字符串 | O | 取值{“animation_flag_pause ”,“animation_flag_forever”}。
|
src | 字符串 | M | 每一帧图片的文件名,该src值不可为空。 |
time | 数值 | M | [0-~],相对于起始帧的间隔时间(毫秒),也是动画持续时间,帧图片人肉眼能识别时间延时为300ms左右,不小于0。 |
示例:图片动画效果,每帧更新图片。例如,在400-800ms时,由图片zuida1_1.png更新为zuida1_2.png。
<Image x="-50" y="490" src="zuida1_1.png">
<SourcesAnimation>
<Source src="zuida1_1.png" time="0"/>
<Source src="zuida1_1.png" time="400"/>
<Source src="zuida1_2.png" time="800"/>
<Source src="zuida1_3.png" time="1200"/>
<Source src="zuida1_4.png" time="1600"/>
<Source src="zuida1_5.png" time="2000"/>
<Source src="zuida1_1.png" time="2500"/>
<Source src="zuida1_1.png" time="3000"/>
<Source src="zuida1_2.png" time="3500"/>
<Source src="zuida1_3.png" time="4000"/>
<Source src="zuida1_4.png" time="4500"/>
<Source src="zuida1_5.png" time="5000"/>
</SourcesAnimation>
</Image>