MAML实例,数组的使用

用数组可以很方便的写出许多有意思的特效,以下为一个仿小米净化器的效果实例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?xml version="1.0" encoding="utf-8"?>
<Lockscreen version="1" frameRate="60" displayDesktop="false" screenWidth="1080">
	<!-- 初始坐标定义 -->
	<Var name="vx"  type="number[]" size="200" const="true" />
	<Var name="vy"  type="number[]" size="200" const="true" />
	<!-- 移动速度定义 -->
	<Var name="vt"  type="number[]" size="200" const="true" />
	<!-- 旋转角度定义 -->
	<Var name="vz" type="number[]"  size="200" const="true" />
	<!-- 粒子半径定义 -->
	<Var name="vr" type="number[]"  size="200" const="true" />
	<!-- 粒子透明度定义 -->
	<Var name="va" type="number[]"  size="200" const="true" />
 
	<!-- 给定义的变量初始化赋值 -->
	<ExternalCommands>
		<Trigger action="resume"> 
			<LoopCommand count="200" indexName="VarNum">
				<!-- 随机初始坐标 -->
				<VariableCommand name="vx" expression="6*rand()+4" type="number[]"  index="#VarNum" />
				<VariableCommand name="vy" expression="6*rand()+4" type="number[]"  index="#VarNum" />
				<!-- 随机移动速度 -->
				<VariableCommand name="vt" expression="(5*rand()+5)*500" type="number[]" index="#VarNum" />
				<!-- 随机旋转角度 -->
				<VariableCommand name="vz" expression="360*rand()" type="number[]"  index="#VarNum" />
				<!-- 随机半径 -->
				<VariableCommand name="vr" expression="int(5*rand()+3)" type="number[]" index="#VarNum" />
				<!-- 随机透明度 -->
				<VariableCommand name="va" expression="int(205*rand()+50)" type="number[]" index="#VarNum"  />
			</LoopCommand>
		</Trigger>
	</ExternalCommands>
 
	<!-- 背景 -->
	<Rectangle  w="1080" h="2500" fillColor="#3fb57d" />
	<!-- 粒子 -->
	<Array count="200" indexName="__rond">
		<Circle x="540-#vx[#__rond]*100*(1-#time/#vt[#__rond]%1*0.5)"  y="960-#vy[#__rond]*100*(1-#time/#vt[#__rond]%1*0.5)" r="#vr[#__rond]"  fillColor="#ffffff"  alpha="#va[#__rond]*(2-#time/#vt[#__rond]%1*2)" centerX="#vx[#__rond]*100*(1-#time/#vt[#__rond]%1*0.5)" centerY="#vy[#__rond]*100*(1-#time/#vt[#__rond]%1*0.5)" rotation="#vz[#__rond]"/>
	</Array>
 
	<!-- 外圆环 -->
	<Array count="18" indexName="__yuan">
		<Arc x="540" y="960" w="700" h="700-#__yuan*16*(1-abs(sin(3.14*#time))*0.8)" startAngle="0" sweep="360" rotation="#__yuan*10-int(#time/8%360)" centerX="350" centerY="350-8*#__yuan*(1-abs(sin(3.14*#time))*0.8)" close="true"  strokeColor="#ffffff" weight="2" alpha="255-#__yuan*20"/>
	</Array>
 
	<Text x="540" y="860"  color="#ffffff" size="30" textExp="'当前电量'"  align="center" alignV="center" />
 
	<Text x="540" y="960"  color="#ffffff" size="150" textExp="#battery_level" fontFamily="sans-serif" fontStyle="bold" align="center" alignV="center" />
 
	<!-- 上滑解锁 -->
	<Unlocker name="unlocker"  >
		<StartPoint x="0" y="1570" w="1080" h="1920" easeType="QuintEaseOut" easeTime="800"/>
		<EndPoint x="0" y="1570-1920-400" w="1080" h="1920" >
			<Path x="0" y="1570" tolerance="2000">
				<Position x="0" y="0" />
				<Position x="0" y="-1920" />
			</Path>
		</EndPoint>
	</Unlocker>
</Lockscreen>

4 条评论

  • 匿名 2017年10月17日 回复

    充电动画+1
    (๑˙ー˙๑)

  • 匿名 2017年7月27日 回复

    试试看????

  • 墙高高 2017年7月27日 回复

    抄的我都不好意思了

  • 匿名 2017年7月27日 回复

    哎哟,不错哦!

发表评论

电子邮件地址不会被公开。

©2015-2016 zhutidasai.com. 版权所有 京ICP备16041368号-3