快速业务通道

使用Transition和Tween类

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-12
上面的代码分两步来导入。第一行用来导入mx.transitions.Tween类。第二行使用的*通配导入mx.transitions.easing类的六种方式。第二行实际上也是导入了整个类包(package),flash 文档定义类路径的方式为“指定的类路径目录下的一个或多个类文件”在本例中类的路径如下: \\First Run\Classes\mx\transitions\easing 目录.你可能会同意我们导入整个类包比单独导入六个类要方便的多的想法。当导入后我们在使用easing时无需再输入很长的类名如mx.transitions.easing.Elastic.easeOut而只要输入Elastic.easeOut就可以了。
使用类似的代码。我们可以将_x的属性替换为_alpha来实现淡入淡出的效果。例如代码如下:
代码:

import mx.transitions.Tween;
import mx.transitions.easing.*;
new Tween(ball_mc, "_alpha", Strong.easeIn, 100, 0, 3, true);


现在ball_mc不在移动了。而是从100透明到0在3秒内。如果你想使它的速度更快一些,可能更改持续的时间如将3改为2或是1.
除了使用秒淡入你的剪辑之外,你还可以使用一少部帧来淡入淡出你的剪辑,在Tween类中将你的持续时间duration设置为持续帧的时间而不设置成秒数,你需要设置最后一个参数。当设为true时是告诉FLASH duration做为秒来使用。当设成FALSE时是告诉flash将duration做为帧数来使用。Druation设置成将要持续多少帧完成动作。如下代码:
代码:

import mx.transitions.Tween;
import mx.transitions.easing.*;
new Tween(ball_mc, "_alpha", Strong.easeIn, 100, 0, 24, false);


上面的代码是将ball_mc淡入使用strong.easIn方式,需要的持续时间为24帧。因为后面设置为false.所以这个24只的并不是秒。
如用帧数而不使用秒数来计算持续时间会给你带来一些灵活性。但是记住使用帧的形会受到帧速度的限制,比如你的动画速度是12/秒,那么24帧就是2秒,如果你的帧速度是24/秒,那么24帧就是1秒,所以当你在未修改代码时修改了你的帧速度,你需要注意你的动画速度。也就是帧的长短。
使用Tween类有一些技巧。你可以写一些事件来处理当tween结束时的动作。如下代码:
代码:

import mx.transitions.Tween;
import mx.transitions.easing.*;
var tween_handler:Object = new Tween(ball_mc, "_alpha", Strong.easeIn, 100, 0, 3, true);
tween_handler.onMotionFinished = function() {
//放置你要执行的代码
trace("tween结束了。触发动作");
};


当你测试你的影片时,淡入完成后会在输出面板上显示tween结束了。触发动作
<未完>
关键词:

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号