当前位置:软件学习 > Flash >>

flash 创建连续运行的动画程序

您可以使动画沿 x 轴来回移动永不停止。Tween 类将这种动画恰当地命名为 yoyo() 方法。yoyo() 方法将等待 onMotionFinished 事件处理函数以开始执行,随后交换 begin 和 finish 参数。动画将再次开始,如下面的过程所示。
    创建无止境运动的动画:
    创建一个名为 yoyo.fla 的新 Flash 文档。
    打开"动作"面板并在时间轴的第 1 帧上输入以下

ActionScript:

 代码如下 复制代码

import mx.transitions.Tween;
import mx.transitions.easing.*;
 this.createEmptyMovieClip("box_mc", this.getNextHighestDepth());
with (box_mc) {
    beginFill(0xFF0000, 60);
    moveTo(0, 0);
    lineTo(20, 0);
    lineTo(20, Stage.height);
    lineTo(0, Stage.height);
    lineTo(0, 0);
    endFill();
}

    第一部分代码首先导入 Tween 类和 easing 包中的每个类。下一部分代码创建一个实例名称为 box_mc 的新影片剪辑,并在舞台上绘制一个宽度为 20 像素、高度与舞台相等的矩形。
    在上一步中创建的代码后添加以下 ActionScript:

 代码如下 复制代码

var box_tween:Tween = new Tween(box_mc, "_x", Regular.easeInOut, 0, Stage.width, 3, true);
box_tween.onMotionFinished = function() {
     box_tween.yoyo();
};

    此代码将创建一个新补间,以使 box_mc 影片剪辑在 3 秒钟内沿 x 轴通过舞台。
    选择"控制">"测试影片"来测试动画。
    矩形框从左到右来回移动。如果动画不平滑,可能需要将文档的帧速率从 12 fps 增加到 24 fps。
    随着矩形框接近舞台的右侧边缘,它可能会运动到舞台的边界之外。虽然这看起来并不是多大的事,但是您可能不希望该矩形从舞台的边缘消失,然后在一秒之后再次出现,并从另一个方向移动。
    若要进行调整,请将该矩形从 0 像素移到舞台宽度减去 box_mc 影片剪辑的宽度的位置。
    若要阻止矩形消失,请在步骤 3 中修改对应的代码行,以与下面的代码相符:

 代码如下 复制代码

var box_tween:Tween = new Tween(box_mc, "_x", Regular.easeInOut, 0, (Stage.width - box_mc._width), 3, true);

    再次测试动画("控制">"测试影片")。
    现在,该框在从舞台边缘消失之前将停止缓动。

补充:flash教程,动画技术
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,