AS3从多个类访问舞台上的movieclip

时间:2014-08-12 18:37:28

标签: actionscript-3 flash class

我在舞台上有一个带有动画片段的fla文件叫做“ding”。

我有一个带有以下代码的Main.as文件(在这里我可以跟踪ding.x):

package { 

import flash.display.MovieClip;
import flash.events.Event;
import flash.events.MouseEvent;

public class Main extends MovieClip{
    public static var _goviral:goviral;

    public function Main() {
        createPlayer();
    }

    public function createPlayer():void{

        _goviral = new goviral();

        trace(ding.x);
    }

}
}

我还有一个带有以下代码的goviral.as(这里我无法追踪ding.x):

package { 

import flash.display.MovieClip;
import Main;

public class goviral extends MovieClip{

    public var main:Main;


    public function goviral(){
        main = new Main();
        trace(ding.x);
    }
}
}

如何从goviral.as类中追踪动画片段?我一直在靠墙撞击,让它发挥作用。请帮帮我!

TNX!

1 个答案:

答案 0 :(得分:0)

正如@DodgerThud所指出的,你需要先解决无限循环问题。 你可以将ding传递给goviral的构造函数,因此它有自己的引用:

package { 

import flash.display.MovieClip;
import flash.events.Event;
import flash.events.MouseEvent;

public class Main extends MovieClip{
    public static var _goviral:goviral;

    public function Main() {
        createPlayer();
    }

    public function createPlayer():void{

        _goviral = new goviral(ding);
    }

}
}

你不应该再次实例化。

package { 

import flash.display.MovieClip;

public class goviral extends MovieClip{    

    public function goviral(ding:MovieClip){
        trace(ding.x);
    }
}
}