flex中如何实现图片沿折线移动
以下是我的思路,但是却出现了如下了问题:
我使用flex中的sequence来实现顺序效果播放,主要想实现将一张图片从A点移动到B点,再从B移动到C,以此类推。我采用move来实现移动效果,先写个mymove类继承move,在构造函数中设置好move的属性,再利用循环创建mymove对象并给各个属性设置值,并将mymove对象添加到sequence中,最后播放sequence中各个动画大的效果,结果出乎意料的是,根本没反应,一下是代码,请各位达人帮忙解决
mymove类
package{ import flash.geom.Point; import mx.effects.Move; public class Mymove extends Move { public function Mymove(p1:Point,p2:Point,target:Object) { var move:Move=new Move(target); move.xFrom=p1.x;move.yFrom=p1.y; move.xTo=p2.x;move.yTo=p2.y; //move.play(); move.duration=2000; } }}
<?xml version="1.0" encoding="utf-8"?><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="initApp()"> <mx:Script> <![CDATA[ import mx.effects.Sequence; internal function initApp():void{ var i:int; var mymove:Mymove; var p1:Point,p2:Point; var points:Array=new Array( new Point(0,0),new Point(0,50), new Point(50,50),new Point(50,100), new Point(100,100),new Point(100,50)); for(i=0;i<5;i++){ p1=points[i];p2=points[i+1]; mymove=new Mymove(p1,p2,img); sequence.addChild(mymove); } sequence.play(); } ]]> </mx:Script> <mx:Sequence id="sequence"> </mx:Sequence> <mx:Image id="img" source="add_reviewer.gif"> </mx:Image> <mx:Button x="212" y="297" label="Button" id="btn" click="btn.label=sequence.children.length.toString();"/></mx:Application>