在Flash中分层对象

时间:2013-05-05 12:59:58

标签: actionscript-3 flash-cs6

我想知道改变Flash中对象分层的最佳方法是什么?我的项目主要由小型个人电影剪辑组成。我想更好地将我的对象组织成图层,以便在给定时间可以在另一组上方显示一组动画片段,而不会发生任何冲突。关于最佳方法的任何建议都会很棒。

编辑:使用以下内容获取错误:

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

var backgroundLayer:Sprite = new Sprite;
backgroundLayer.name = "backgroundLayer";

var gameLayer:Sprite = new Sprite;
gameLayer.name = "gameLayer";

var menuLayer:Sprite = new Sprite;
menuLayer.name = "menuLayer";

public function Main()
{
    addChild(backgroundLayer);
    addChild(gameLayer);
    addChild(menuLayer);

错误是:

1120: Access of undefined property backgroundLayer.
1120: Access of undefined property gameLayer.
1120: Access of undefined property menuLayer.

感谢。

1 个答案:

答案 0 :(得分:0)

可能最简单的方法是创建DisplayObjectContainer s或其子类的层次结构。 (SpriteMovieClip等)一旦按正确的顺序将这些容器添加到舞台中,这些容器的任何子节点都将“位于”容器的层内。

要在代码中移动这些图层之间的对象,您只需oldLayer.removeChild(thing); newLayer.addChild(thing);

这是否是“最好”的方法取决于你在做什么,但这是我过去做游戏对象分层的一种方式。