您现在的位置: 圆点视线 >> 教程 >> flash教程 >> 经验技巧 >> 文章正文
[推荐]AS代码完成Flash补间动画           ★★★
AS代码完成Flash补间动画
作者:hairan  文章来源:网狐  点击数:  更新时间:2007-7-18 14:29:52 
 页面功能:【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口 【字体:
说到补间动画,很多人都会想到在时间轴里定义两个关键帧,然后创建一个补间,其实AS也可以完成等效的工作,而且能完成的更好。

  要用程序创建补间,有两种方法,一种是通过setInterval函数,定时移动mc,可以达到效果,但比较麻烦。第二种就是今天要推荐的通过Tween类来创建补间动画。

  为什么Tween比setInterval方便呢,首先代码量少,看着舒服,其次,Tween类可以使用一些比较有名的缓动类,还有,Tween类可以广播和侦听事件,这三点就足以让我们选择Tween而不是setInterval。

  先来说一下Tween类的用法

  要用Tween类,首先要导入Tween类

 import mx.transtions.Tween;

  Tween类的语法是

var twMove:Tween=new Tween(mClip,"_x",null,0,550,10,true);

  解释一下:

  mClip:显示对象——对要显示对象的引用
  _x:要补间的属性
  缓动函数:对一个缓动函数的引用,这里是null,就是不引用
  0——补间属性的开始值
  550——补间属性的结束值
  10——持续时间
  使用秒——true 使用,false不使用

  由于Tween类广播事件,因此可以对Tween类建立侦听器,具体Tween类的方法,请查看帮助。

  下面是一个实例,请事先做好链接标识符为“ball”的MC,拷贝以下代码到第一帧。

import mx.transitions.Tween;
import mx.transitions.easing.*;
var aClass=[Back,Bounce,Elastic,Regular,Strong];
var aEasingMethod:Array=new Array();
//在aEasingMethod中放入每个缓动方法
for(i=0; i < aClass.length; i++){
  aEasingMethod.push(aClass[i].easeIn);
  aEasingMethod.push(aClass[i].easeOut);
  aEasingMethod.push(aClass[i].easeInOut);
}
//定义初始变量
var nX=10;
var Y=20;
var oClips:Object=new Object();
//建立侦听器
var tListener:Object=new Object();
tListener.onMotionFinished=function(twObject:Tween){
  //缓动结束时按原路径返回
  twObject.yoyo();
}
for(i=0; i < aEasingMethod.length; i++){
  depth=this.getNextHighestDepth();
  mClip=this.attachMovie("ball","ball"+i,depth,{_x:nX,_y:Y});
  //设置x坐标
  nX+=mClip._width+10;
  //将一个缓动方法添加到oClips对象
  oClips[mClip._name]=aEasingMethod[i];
  //当用户点击时开始_y属性的补间
  mClip.onPress=function(){
    var twMove:Tween = new Tween(this,"_y",oClips[this._name],20,400,4,true);
    //添加侦听器
    twMove.addListener(tListener);
  }
}


用鼠标点击小球,你会看到AS实现的补间动画效果

 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 文章录入:hairan    责任编辑:hairan  【字体:
 
  • 上一篇文章:

  •  
  • 下一篇文章:
  • 最新文章
    相关文章
    使用html为flash页面添加音乐
    freehand也能做flash动画
    Flash格斗动画[鬼斗]的镜头处理教程
    在flash里获取PHP变量
    Flash+ASP实现电子互动地图在线标注功能
    让Flash调用符合web标准
    Flash实例:鼠标点选不同层次的层叠图片
    Flash AS代码简单实现动态文本包边效果
    用Flash 8 AS代码写摄像头拍照功能
    Flash遮罩轻松制作鼠标弹性跟随放大镜
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    发表评论:
     姓  名: 评 分: 1分 2分 3分 4分 5分
     评论内容: ·严禁发表危害国家安全、政治、黄色淫秽等内容的评论。
    ·用户需对自己在使用本网服务过程中的行为承担法律责任
    ·本站管理员有权保留或删除评论内容。
    ·评论内容只代表机友个人观点,与本网站立场无关。
     
    最 新 推 荐
     
    百度主题推广
    最 新 热 门