2010-06-27 39 views

回答

3

如果您使用的是Flash Builder(或Flex Builder),则可以通过创建ActionScript项目来完成此操作。当你说你想使用Flex SDK,但是在纯ActionScript中,我有点不清楚,因为Flex是ActionScript的一个框架。所以如果你正在谈论mx效果和星火效果,请让我们知道。

以下是纯ActionScript 3.0项目。

好的,你需要一个延伸MovieClip的类,比如SimpleFlash。如果您不需要使用时间轴,则可以扩展Sprite

import flash.display.MovieClip; 

public class SimpleFlash extends MovieClip { 
    public function SimpleFlash() { 

    } 
} 

我们需要一个简单的形状被放置在我们的SimpleFlash构造,

var simpleShape:Shape = new Shape(); 
      simpleShape.graphics.beginFill(0xFF0000); 
      simpleShape.graphics.drawRect(0, 0, 100, 100); 
      simpleShape.graphics.endFill(); 
         simpleShape.x = 0; 

,我们将有一个事件监听器添加到形状,这样,当我们进入第一个框,我们可以执行一些动画。

simpleShape.addEventListener(Event.ENTER_FRAME,simpleAnimation); 

不要忘了将它添加到显示列表

addChild(simpleShape); 

在我们simpleAnimation功能(称为两行了),我们希望移动的形状沿x轴的直线。

public function simpleAnimation(event:Event):void { 
      event.target.x += 1; 
} 

每当发生ENTER_FRAME事件时,后面的形状将向右移动1个单位。 你有没有时间线的简单动画。

你可以从中学到什么?

  • 1更改为另一个数字,看看会发生什么。形状移动得更快还是更慢?
  • 更改event.target.x改为event.target.y哪种方法可行?
  • 你可以让它走向对角吗?怎么样 ?
+0

您好,非常符合我的要求:事件监听器对我来说是一个缺失的东西。 当我说在纯动作柔性,我的意思是没有XML灵活的语言的东西。 – user310291 2010-07-02 18:36:44

相关问题