ActionScript 3.0巧用Tween类实现拖动物体自由落地

import flash.events.Event;
import flash.events.MouseEvent;
import flash.display.Sprite;
import fl.transitions.Tween;
import fl.transitions.easing.*;

//听说shape比sprite节省资源
var circle:Sprite=new Sprite();
circle.graphics.beginFill(0);
//试着把circle.graphics.drawCircle(100,100,10)发现每次偏移,说明每次startDrag()方法会重绘
circle.graphics.drawCircle(0,0,10);
circle.graphics.endFill();
stage.addChild(circle);
var t:Tween=newTween(circle,"y",Bounce.easeOut,mouseY,stage.stageHeight-circle.height/2,5,true);
//先保持不动,等停止拖动再触发缓动
t.stop();
circle.x=100;
circle.y=100;
circle.addEventListener(MouseEvent.MOUSE_DOWN,startdrag);
circle.addEventListener(MouseEvent.MOUSE_UP,stopdrag);
function startdrag(e:MouseEvent):void{
    t.stop();
    circle.startDrag(true);
 }
function stopdrag(e:MouseEvent):void{
    circle.stopDrag();
  t.start();
 }

猜你喜欢

转载自blog.csdn.net/w2014qian/article/details/46043581
今日推荐